powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / научите работать с Relationship
36 сообщений из 36, показаны все 2 страниц
научите работать с Relationship
    #36536703
Ymka2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
в наличии ТРИ класса:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
/// класс таблиц
Class TEST.gTable Extends %Persistent
{
/// ссылка на строки таблицы
     Relationship rRows As TEST.gRow [ Cardinality = many, Inverse = rTable ];
/// название таблицы
     Property Name As %String(MAXLEN =  500 , TRUNCATE =  1 );
}

/// класс строк таблицы
Class TEST.gRow Extends %Persistent
{
/// связь с родительской таблицей
     Relationship rTable As TEST.gTable [ Cardinality = one, Inverse = rRows ];
/// связь с ячейками строки
     Property rCells As TEST.gCell [ Cardinality = many, Inverse = rRow ];
/// тип строки (тело( 1 ),заголовок( 2 ) или подвал( 3 ))
     Property rType As %Library.String(VALUELIST = ",1,2,3") [ InitialExpression = "1" ];
}

///класс ячеек строки
Class TEST.gCell Extends %Persistent
{
/// связь со строкой таблицы
Relationship rRow As TEST.gRow [ Cardinality = one, Inverse = rCells ];
/// текст ячейки
Property val As %String(MAXLEN =  1000 , TRUNCATE =  1 );
}
пытаюсь записать данные:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
ClassMethod populate() As %String
{
	k ^TEST.gTableD,^TEST.gRowD,^TEST.gCellD
	s t=##class(TEST.gTable).%New()
	s t.Name="t1"
	s r=##class(TEST.gRow).%New()
	s c=##class(TEST.gCell).%New()
	s c.val="data1"
	s r.rCells=c
	s t.rRows=r	
	s sc=t.%Save()
	
	w:$$$ISERR(sc) $System.Status.GetErrorText(sc)
	q sc
}
Но что то не так, проверка не сработала:
Код: plaintext
1.
2.
3.
4.
5.
=> s a=##class(TEST.gTable).%OpenId( 1 )
=> w a.rRows
=>  2 @%Library.RelationshipObject
=> s b=a.rRows.GetAt( 1 )
=> "пусто"
что я делаю не так?
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36536825
Блок А.Н.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
мне кажется, что
%Save(1)
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36536864
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ymka2007что я делаю не так?
Не в ту сторону сохраняешь...

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
ClassMethod populate() As %String
{
	k ^TEST.gTableD,^TEST.gRowD,^TEST.gCellD
	s t=##class(TEST.gTable).%New()
	s t.Name="t1"
	d t.%Save()
	s r=##class(TEST.gRow).%New()
	s r.rTable=t
	d r.%Save()
	s c=##class(TEST.gCell).%New()
	s c.val="data1"
	s c.rRow=r
	d c.%Save()
	q  1 
}

Т.е. орефы или ИДшки (в SQL) нужно записывать в свойства которые Cardinality = one .
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36536877
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Либо инсертить в Cardinality = many из квик старта...

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
Создайте в памяти двух пациентов и доктора:
USER>set p1=##class(Patient).%New()
USER>set p1.Name="Иван"
Caché Objects QuickStart  15 
USER>set p2=##class(Patient).%New()
USER>set p2.Name="Петр"
USER>set d=##class(User.Doctor).%New()
USER>set d.Name="Профессор Иванов"
Свяжите пациентов и доктора двумя возможными способами:
USER>set p1.Physician=d
USER>do d.Patients.Insert(p2)
Теперь Вы можете получать информацию о связанных объектах с обеих сторон отношения:
USER>w d.Patients.GetAt( 1 ).Name
Иван
USER>w d.Patients.GetAt( 2 ).Name
Петр
USER>w p1.Physician.Name
Профессор Иванов
Как видите, со стороны Many (Doctor) работа с отношением аналогична работе с коллекцией, а
со стороны One с обычной ссылкой.
Сохраните доктора и посмотрите на глобалы, соответствующие обоим классам.
USER>do d.%Save()
Как видите, сохранение доктора привело и к сохранению пациентов.
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36536880
Ymka2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
тогда структуру я правильно сформировал?

одна таблица содержит много строк
одна строка содержит много ячеек

как это правильно описать при формировании класса?

и еще я хочу сохранять только класс с таблицей, что бы остальные связи сохранялись автоматически
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36536912
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ymka2007тогда структуру я правильно сформировал?

одна таблица содержит много строк
одна строка содержит много ячеек
Да. Правильно.

Ymka2007и еще я хочу сохранять только класс с таблицей, что бы остальные связи сохранялись автоматически
Тогда инсертить в главное свойство. Как в примере из квикстарта
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36536933
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хотя, если верить квикстарту, сработает и такое

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
ClassMethod populate() As %String
{
	k ^TEST.gTableD,^TEST.gRowD,^TEST.gCellD
	s t=##class(TEST.gTable).%New()
	s t.Name="t1"
	s r=##class(TEST.gRow).%New()
	s r.rTable=t
	s c=##class(TEST.gCell).%New()
	s c.val="data1"
	s c.rRow=r
	d t.%Save()
	q  1 
}
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36536946
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хотя может и только вот так

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
ClassMethod populate() As %String
{
	k ^TEST.gTableD,^TEST.gRowD,^TEST.gCellD
	s t=##class(TEST.gTable).%New()
	s t.Name="t1"
	s r=##class(TEST.gRow).%New()
	s r.rTable=t
	s c=##class(TEST.gCell).%New()
	s c.val="data1"
	s c.rRow=r
	d r.%Save()
	d t.%Save()
	q  1 
}
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36536953
Ymka2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
выполняю:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
ClassMethod populate() As %String
{
	k ^TEST.gTableD,^TEST.gRowD,^TEST.gCellD
	s t=##class(TEST.gTable).%New()
	s t.Name="t1"
	s r=##class(TEST.gRow).%New()	
	s c=##class(TEST.gCell).%New()
	s c.val="data1"
	s c.rRow=r
	d r.rCells.Insert(c)
	s r.rTable=t
	d t.rRows.Incert(r)
	s sc=t.%Save()
	w:$$$ISERR(sc) $System.Status.GetErrorText(sc)
	q sc
}
ошибка:
Код: plaintext
1.
2.
3.
4.
5.
d ##class(TEST.gTable).populate()
 
 If newvalue'="" Do ..rRow.rCellsRelate(%this)
                 ^
<METHOD DOES NOT EXIST>zrRowSet+ 5 ^TEST.gCell. 1  *rCellsRelate,TEST.gRow
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36536989
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ymka2007 , в перемешку не пиши Пробуй так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
ClassMethod populate() As %String
{
	k ^TEST.gTableD,^TEST.gRowD,^TEST.gCellD
	s t=##class(TEST.gTable).%New()
	s t.Name="t1"
	s r=##class(TEST.gRow).%New()	
	d t.rRows.Incert(r)
	s c=##class(TEST.gCell).%New()
	s c.val="data1"
	d r.rCells.Insert(c)
	s sc=r.%Save()
	w:$$$ISERR(sc) $System.Status.GetErrorText(sc)
	s sc=t.%Save()
	w:$$$ISERR(sc) $System.Status.GetErrorText(sc)
	q sc
}
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36536995
Ymka2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
krvsa,

Код: plaintext
1.
2.
3.
4.
d ##class(TEST.gTable).populate()
 
 d r.rCells.Insert(c)
 ^
<INVALID OREF>zpopulate+ 8 ^TEST.gTable. 3 
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36537209
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ymka2007 , я-то сам с коллекциями не работаю... Делаю всегда вот как

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
/// Собственно добавление этапа
ClassMethod cAddStage(Id As %String) As %String [ ZenMethod ]
{
	s ob=##class(zst.DAT.Recipe).%OpenId(Id)
	s o=##class(zst.DAT.Stage).%New()
	s o.Recipe=ob
	d o.%Save()
	s id=o.%Id()
	d o.%Close()
	d ob.%Close()
	q id
}

Но у меня всегда "верхний уровень" существует.

Попробуй вот как:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
ClassMethod populate() As %String
{
	k ^TEST.gTableD,^TEST.gRowD,^TEST.gCellD
	s t=##class(TEST.gTable).%New()
	s t.Name="t1"
	s r=##class(TEST.gRow).%New()
	s r.rTable=t
	s c=##class(TEST.gCell).%New()
	s c.val="data1"
	s c.rRow=r
	d r.%Save()
	d t.%Save()
	q  1 
}

Или уж вовсе вот так

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
ClassMethod populate() As %String
{
	k ^TEST.gTableD,^TEST.gRowD,^TEST.gCellD
	s t=##class(TEST.gTable).%New()
	s t.Name="t1"
	s r=##class(TEST.gRow).%New()
	s r.rTable=t
	s c=##class(TEST.gCell).%New()
	s c.val="data1"
	s c.rRow=r
	d c.%Save()
	d r.%Save()
	d t.%Save()
	q  1 
}
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36537233
Ymka2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
krvsa,

в обоих случаях одна и таже ошибка:
Код: plaintext
1.
2.
3.
If newvalue'="" Do ..rRow.rCellsRelate(%this)
                 ^
<METHOD DOES NOT EXIST>zrRowSet+ 5 ^TEST.gCell. 1  *rCellsRelate,TEST.gRow
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36537277
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ymka2007 , а так

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
ClassMethod populate() As %String
{
	k ^TEST.gTableD,^TEST.gRowD,^TEST.gCellD
	s t=##class(TEST.gTable).%New()
	s t.Name="t1"
	d t.%Save()
	s r=##class(TEST.gRow).%New()
	s r.rTable=t
	d r.%Save()
	s c=##class(TEST.gCell).%New()
	s c.val="data1"
	s c.rRow=r
	d c.%Save()
	q  1 
}
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36537289
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пример про доктора с пациентами я скопипастил прям с квикстарта!
квикстартКак видите, со стороны Many (Doctor) работа с отношением аналогична работе с коллекцией, а
со стороны One с обычной ссылкой.
Сохраните доктора и посмотрите на глобалы, соответствующие обоим классам.
Код: plaintext
USER>do d.%Save()
Как видите, сохранение доктора привело и к сохранению пациентов.
Да что же это уже и верить некому?!
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36537311
Ymka2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
krvsa,

таже ошибка
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36537313
Ymka2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ymka2007,

дай ссылку где ты пример взял
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36537363
doublefint
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Старый добрый Parent-Child не подойдет?
Код: plaintext
1.
2.
3.
4.
5.
/// Таблица
Class User.Tbl Extends (%Persistent, %Populate) {
/// Строки
Relationship Rows As User.Row [ Cardinality = children, Inverse = Tbl ];
Property Name As %String;
}
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
/// Строки
Class User.Row Extends (%Persistent, %Populate) {
/// Таблица
Relationship Tbl As User.Tbl [ Cardinality = parent, Inverse = Rows ];
/// Ячейки
Relationship Cells As User.Cell [ Cardinality = children, Inverse = Row ];
Property Name As %String;
}
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
///Ячейки
///Ячейки
Class User.Cell Extends (%Persistent, %Populate) {
 	///Строка
 	Relationship Row As User.Row [ Cardinality = parent, Inverse = Cells ];
	Property Name As %String;
}
Использование:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
 d ##class(User.Tbl).%KillExtent()
 d ##class(User.Tbl).Populate( 10 ), ##class(User.Row).Populate( 100 ), ##class(User.Cell).Populate( 1000 )
 s tbl=##class(User.Tbl).%OpenId( 1 ), row=##class(User.Row).%New(), row.Tbl=tbl
        , cell=##class(User.Cell).%New(), cell.Row=row d cell.%Save()
 s (r,c)="" f { s row=tbl.Rows.GetNext(.r) q:r=""
   f { s cell=row.Cells.GetNext(.c) q:c=""
    w !,cell.Row.Tbl.Name,"; ", cell.Row.Name,"; ", cell.Name
   }
 } 
 
 s row=tbl.Rows.GetNext(""), cell=row.Cells.GetNext("")
 w !,"Rows:",tbl.Rows.Count(),"; Cells:",row.Cells.Count()
 s cell.Row="" w !,"Now Cells:",row.Cells.Count()
 s row.Tbl="" w "; Now Rows:",tbl.Rows.Count() d tbl.%Save()
 
 ;Ну и конечно 
 d tbl.%DeleteId(tbl.%Id()) 
 w !,"Exits tbl:",##class(Tbl).%ExistsId( 1 )
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36537447
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ymka2007,

Исправьте Ваш код:
Код: plaintext
1.
Property rCells As TEST.gCell [ Cardinality = many, Inverse = rRow ];
на
Код: plaintext
1.
Relationship rCells As TEST.gCell [ Cardinality = many, Inverse = rRow ];
И метод populate() должен возвращать %Status , а не %String .
Рабочий пример:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
ClassMethod populate() As %Status
{
  d ##class(TEST.gTable).%KillExtent()
  d ##class(TEST.gRow).%KillExtent()
  d ##class(TEST.gCell).%KillExtent()
  s t=##class(TEST.gTable).%New()
  s t.Name="t1"
  for ir= 1 : 1 : 3  {
    s r=##class(TEST.gRow).%New()
    s r.rType=ir
    for ic= 1 : 1 : 3  {
      s c=##class(TEST.gCell).%New()
      s c.val="data"_ic
      d r.rCells.Insert(c)
    }
    d t.rRows.Insert(r)
  }
  s sc=t.%Save()
  d $system.OBJ.DisplayError(sc)
  q sc
}
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36537569
Ymka2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
servit,

о!!
спасиб большое!!!
слона то я и не заметил, все в глазах рябит (ребенок всю ночь спать не давал, болеет)
все заработало так как нужно
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36537650
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
servit глазастый!
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36537653
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ymka2007все в глазах рябит (ребенок всю ночь спать не давал, болеет)
А у меня их трое!
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36537686
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsa servit глазастый!
Я просто сделал проект и в отладчике проверил в чём проблема.
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36537721
Ymka2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
servit,

твой отладчик сразу сечет и показывает проблему?

выявилась закономерность:
если делать через циклы, то получаются данные как будто записываются сначала в стек, а потом при записи на диск в обратном порядке извлекаются: получается 3-тья строка записывается первой и 3-тья ячейка записывается первой (как там в математике - "перевернутая матрица", кажется)
если добавлять еще одну строку, то она записывается 4-той и из-за цикла ячейки соответственно тоже получаются справа на лево

так что теперь делать то?
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36537800
doublefint
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ага, есть такое поведение. Первый раз сохранение начинается с последнего созданного дочернего (many) объекта. Можно переопределить поведение или сохранять каждый дочерний объект перед добавлением нового
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36537801
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ymka2007,

Уже было .
Если важен порядок следования, сохраняйте объекты отдельно.
Или в обратной последовательности добавляйте их к отношению, но учтите, что сейчас порядок сохранения элементов в отношении строго не определён.
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36537899
Ymka2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
да уже видел
но сделал по другому: просто перенаправил направления циклов (сделал задом на перед) так проще
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36538132
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
servitЯ просто сделал проект и в отладчике проверил в чём проблема.
Одно не понятно мне... Как такой класс скомпилился?
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36538515
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsa,

Ошибки #5497 нет, так как есть параметр Inverse . Но лучше обратиться в WRC.
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36540811
Бред
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
servit,

Сколько же проблем возникает из-за того, что в Intersystems так и не научились поддерживать связи между объектами:) Ради SQL:)
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36716122
Ymka2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
не буду создавать новую тему, спрошу здесь
сиутация таже, классы те же

вопрос: как удалить " одним махом" один объект из класса TEST.gTable? так чтобы удалились и relationship объекты.
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36716178
Turk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ymka2007вопрос: как удалить " одним махом" один объект из класса TEST.gTable? так чтобы удалились и relationship объекты.
Подойдет?
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36717178
Ymka2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
классы теперь такие:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
Class TEST.a1 Extends %Persistent
{
 Property rDate As %Date(FORMAT =  4 );
 Property idPlayer As RTT.PLAYER;
 Relationship Tournaments As TEST.b1 [ Cardinality = many, Inverse = DblRankings ];
 Relationship Places As TEST.c1 [ Cardinality = many, Inverse = DblRankings ];
}
Class TEST.b1 Extends %Persistent
{
 Property idTour As RTT.TOURNAMENT;
 Property Place As %String;
 Property Points As %Integer;
 Property hasZachet As %Boolean [ InitialExpression = "0" ];
 Relationship DblRankings As TEST.a1 [ Cardinality = one, Inverse = Tournaments ];
}
Class TEST.c1 Extends %Persistent
{
Property Place As %Integer;
Property AG As hndb.ageGroup;
Relationship DblRankings As TEST.a1 [ Cardinality = one, Inverse = Places ];
}
вот ошибка :
s o=##class(TEST.a1).%DeleteId(1)
w $System.Status.GetErrorText(o)
ОШИБКА #5823: Не удается удалить объект, на который ссылается 'TEST.c1.DblRankings'
Код: plaintext
1.
2.
Error Code Description 
 5823  Cannot reconfigure SQL Server to use sort order ID %d, because the row for that sort order does not exist in syscharsets. 
может нужно переименовать Relationship в TEST.c1 и TEST.b1 ?
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36717305
Ymka2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
изменение не помогает
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36717506
Turk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В приведенной мной ранее ссылке вместо one-many используется parent-children.
...
Рейтинг: 0 / 0
научите работать с Relationship
    #36717958
Ymka2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
спасибо, помогло
...
Рейтинг: 0 / 0
36 сообщений из 36, показаны все 2 страниц
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / научите работать с Relationship
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]