28.08.2009, 13:44 | #1 |
Участник
|
Как настроить DynaLink или фильтр в форме
Простите, если вопрос покажется простым.
Из формы "Строки журнала" (InventJournalTransfer) открываю свою форму для отображения таблицы, в которой есть поле JournalId. Но в форме отображаются все записи таблицы, а нужно только те у которых JournalId == InventJournalTrans.JournaId. Вопросы: 1) Почему не возник DynaLink, ведь при открытии формы "Строки журнала" DynaLink был создан автоматически и мы увидели только строки выбранного журнала? 2) Как передать в мою форме JouralId или саму таблицу InventJournalTrans, чтобы иметь возможность руками настроить DynaLink или Ranges? Опыт програмирования еще не большой поэтому и вопросы возможно простые, не пинайте - помогите. |
|
28.08.2009, 13:45 | #2 |
Участник
|
1. используйте menuItem
2. в menuItem установите свойство Datasource все. не надо программировать такие вещи. все делается само на уровне свойств объектов. |
|
28.08.2009, 13:54 | #3 |
Участник
|
Использую menuitem, но не вижу в его свойствах Datasource . Ax 3, может в более поздних версиях это свойство появилось?
|
|
28.08.2009, 13:55 | #4 |
Участник
|
Вы наверно имели в виду MenuItemButton? Сейчас попробую ...
|
|
28.08.2009, 14:01 | #5 |
Участник
|
В свойстве DataSource установлено InventJournalTrans, но DynaLink все равно не возник! Может поле JournalId в моей таблице должно иметь какие-то уникальные свойства чтобы по нему был создан DynaLink???
|
|
28.08.2009, 14:07 | #6 |
Участник
|
Дикую вещь спрошу... ))
А в вашей таблице поле JournalId основано на EDT JournalId? |
|
28.08.2009, 14:20 | #7 |
Участник
|
Цитата:
И вопрос tricky совершенно правомочен. чтобы проверить: 1. создайте в AOT тестовый Query 2. В качестве первого датасорса укажите первую таблицу 3. Внутри первого датасорса добавьте вложенный датасорс со сторой таблицей 4. в свойствах второго датасорса включите AutoRelation = Yes 5. Если хоть что-нибудь появилось в ветке relations - то связь есть. В этом случае возвращайтесь к menuItem и его свойствам 6. Если в ветке relations ничего не появилось, значит между вашими таблицами нет связи (Аксапта о таковой не знает). В этом случае разбирайтесь с типами. |
|
31.08.2009, 14:39 | #8 |
Участник
|
1) Поле JournalId основано на EDT InventJournalId, как и поля в таблицах InventJournalTable и InventJournalTrans
2) Связать свою таблицу с InventJournalTrans не пробовал, даже не думал потому что поле JournalId в таблице InventJournalTrans не уникально и принадлежит многим записям (в этой таблице хранятся строки журналов) и получится связь многие-ко-многим. Вот поэтому и спрашивал: как в новой форме получить JournalId? Я ведь в MenuItem указал datasource и значит как-то могу получить информацию из него!!! А уж DynaLink и самому можно создать, это даже интересно руками пработать |
|
31.08.2009, 14:51 | #9 |
Участник
|
В вашей форме много датасорсов? Датасорс с вашей таблицей какой по порядку? Есть ли связи этого датасорса с другими датасорсами на форме?
В вашей форме в init() можно посмотреть передаваемую запись this.agrs().record(). Из нее можно вытянуть и номер журнала.
__________________
Axapta v.3.0 sp5 kr2 |
|
31.08.2009, 14:54 | #10 |
Участник
|
Спасибо за помощь!!!
После настройки связи между моей таблицей и InventJournalTrans DynaLink стал создаваться. AndyD, спасибо за информацию, уверен пригодится!!! |
|
Теги |
dynalink |
|
Похожие темы | ||||
Тема | Ответов | |||
Фильтр на форме InventClassifierItemSelection | 11 | |||
Как настроить права доступа используя фильтр? | 4 | |||
Фильтр на форме в гриде | 1 | |||
Фильтр на Веб форме | 3 | |||
Фильтр на форме | 5 |
|