17.04.2013, 14:32 | #1 |
Участник
|
Как связать 3 таблицы на форме
Есть форма
На форме имеются несколько источников данных(пять, если быть точным): InventSum - главный, к нему привязан InventDim по innerJoin(в свойствах DS InventDim) Нужно добавить на форму источник данных(таблицу) InventBatch и показать одно из ее полей на форме. InventBatch связана с : 1) InventDim по InventBatchId 2) InventSum по ItemId Как добавить такой DS и показать соответствующее поле? (display метод не предлагать, нужно именно из DS поле показывать) AX2009 |
|
17.04.2013, 15:00 | #2 |
Участник
|
Через DynaLink?
|
|
17.04.2013, 15:02 | #3 |
Ищущий знания...
|
Цитата:
Сообщение от kitty
Есть форма
На форме имеются несколько источников данных(пять, если быть точным): InventSum - главный, к нему привязан InventDim по innerJoin(в свойствах DS InventDim) Нужно добавить на форму источник данных(таблицу) InventBatch и показать одно из ее полей на форме. InventBatch связана с : 1) InventDim по InventBatchId 2) InventSum по ItemId Как добавить такой DS и показать соответствующее поле? (display метод не предлагать, нужно именно из DS поле показывать) AX2009
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с) С Уважением, Елизаров Артем |
|
17.04.2013, 15:12 | #4 |
Участник
|
Ещё можно View сделать = InventSum + InventDim и уже к нему джойнить InventBatch
В этом случае будет доступна сортировка и фильрация по полям из InventBatch |
|
17.04.2013, 15:49 | #5 |
Участник
|
Почему Dynalink?
|
|
17.04.2013, 15:50 | #6 |
Участник
|
А какие еще датасорсы участвуют в запросе? Покажите иерархию.
__________________
// no comments |
|
17.04.2013, 15:56 | #7 |
Участник
|
|
|
17.04.2013, 16:01 | #8 |
Участник
|
2 Dech: Это форма InventOnHandReserve, там немного нетривиальная иерархия
Последний раз редактировалось kitty; 17.04.2013 в 16:04. |
|
17.04.2013, 16:52 | #9 |
Участник
|
X++: this.query().dataSourceTable(tablenum(InventBatch)).clearDynalinks(); this.query().dataSourceTable(tablenum(InventBatch)).addDynalink(fieldnum(InventBatch, ItemId), InventSum, fieldnum(InventSum, ItemId)); this.query().dataSourceTable(tablenum(InventBatch)).addDynalink(fieldnum(InventBatch, inventBatchId), InventDim, fieldnum(InventDim, inventBatchId)); В info(inventSum_DS.query().dataSourceNo(1).toString()); вообще нет InventBatch |
|
18.04.2013, 08:16 | #10 |
Участник
|
Цитата:
Сообщение от kitty
X++: this.query().dataSourceTable(tablenum(InventBatch)).clearDynalinks(); this.query().dataSourceTable(tablenum(InventBatch)).addDynalink(fieldnum(InventBatch, ItemId), InventSum, fieldnum(InventSum, ItemId)); this.query().dataSourceTable(tablenum(InventBatch)).addDynalink(fieldnum(InventBatch, inventBatchId), InventDim, fieldnum(InventDim, inventBatchId)); В info(inventSum_DS.query().dataSourceNo(1).toString()); вообще нет InventBatch
__________________
// no comments |
|
18.04.2013, 08:27 | #11 |
Участник
|
|
|
|
За это сообщение автора поблагодарили: kitty (1). |
|
|