24.10.2002, 12:49 | #1 |
Участник
|
Рефлексивные связи в таблицах
Зачем на некотрые таблицы навешаны связи, в которых ключевые поля ссылаются сами на себя? (Например в таблице Dimensions)
|
|
25.10.2002, 14:33 | #2 |
Участник
|
Отличный вопрос!
Начал отвечать и почувстввал, что вру. Начал проверять. Я не нашел ответа на этот вопрос, но узнал много нового. Давно не было вопросов, которые позволяют узнать новое. Спасибо. Начну отечать как хотел изначально, может кто знает правильный ответ и поправит. Связи на себя нужны для того, чтобы можно было бы открыть подчиненные элементы. По крайней мере, когда я создавал свои модули, то использовал подобные связи именно с такой целью. Но. Когда я посмотрел в проекты, действия, заказы, затраты по целям, то увидел, что связь родитель подчиненный делается вручную, а не с помощью Relations. Кроме того, аналитики являются линейными и в таблице Dimension данная связь вообще не нужна. Поэтому в данном случае, это предположение отпадает. Кроме того, перекрестные ссылки показывают, что этот Relation никем не используется. Поэтому пока я склонен отнести связь Num в таблице Dimension к забытым объектам. Сначала хотели для чего то использовать, а потом забыли. Но вопрос очень интересный. Надо будет еще подумать. |
|
25.10.2002, 15:01 | #3 |
Banned
|
"Рефлексивные" связи делаются для того, чтобы была возможность переименования ключевого поля в таблице. Если ключевое поле таблицы не основано на расширенном типе данных, который указывает на само поле таблицы (как, например, AccountNum в LedgerTable), приходится делать такие связи.
|
|
|
За это сообщение автора поблагодарили: mazzy (2). |
25.10.2002, 15:54 | #4 |
Участник
|
Несколько корявый способ указать на параметры переименования ключевого поля. Тем более, что лишняя связь на таблице сильно мешает - приходиться выбирать, какая важнее. И Люкапы выпадают где ненадо, смущая пользователя...
|
|
25.10.2002, 15:59 | #5 |
Banned
|
Да уж какой есть.
|
|
25.10.2002, 16:19 | #6 |
Участник
|
Цитата:
Изначально опубликовано EVGL
чтобы была возможность переименования ключевого поля в таблице. Спасибо. |
|
25.10.2002, 18:13 | #7 |
Участник
|
А не могли бы вы пояснить механизм переименования ключевого поля? Как я понимаю, для этого используется common.renamePrimaryKey().
И другой интересный вопрос: как работает (и работает ли) common.merge(). Почему-то в форме sysRecordInfo, которая позволяет переименовывать первичный ключ, функциональность слияния записей, которая там есть, отключена. |
|
31.10.2002, 09:07 | #8 |
Продавец игрушек
|
Хочу предостеречь, чтобы на грабли не наступили:
http://www.axforum.info/forums/searc...rder=ascending
__________________
С уважением, Роман Кошелев. |
|
Теги |
renameprimarykey, полезное |
|
Похожие темы | ||||
Тема | Ответов | |||
Обновление поля с определённым типом во всех таблицах. | 1 | |||
Сводное планирование и тип связи операции | 6 | |||
Связи между таблицами. | 7 |
|