06.02.2013, 23:20 | #1 |
Участник
|
Предача параметров формы класс Args
Dynamics AX 2009
Ядро 5.0.1500.2985 SP 1 Идея такова: На первой форме грид с данными и кнопка редактировать которая открывает модальное окно(Форма 2) для редактирования текущей записи грида формы. Подскажите как передать текущую строку с DataSource 1- ой формы на 2 форму я прочитал в этой теме Обсуждение подобной темы как пытаются получить текущую запись на 2- ой форме но так и не понял как ее вообще передать с первой. Я передаю параметры в форму по нажатию кнопки: X++: void clicked() { Args args = new Args(); FormRun EditCashOrder; str formName = formStr(EditCashOrder); ; args.name(formName); args.caller(element); EditCashOrder = classFactory.formRunClass(args); EditCashOrder.run(); EditCashOrder.init(); EditCashOrder.wait(); CashTable_ds.executeQuery(); } |
|
06.02.2013, 23:59 | #2 |
Участник
|
Всё просто. В args есть специальное свойство для хранения данных типа табличная запись - это args.record(). На передающей стороне заполняем это свойство, а на принимающей читаем.
X++: void clicked() { Args args = new Args(); FormRun EditCashOrder; str formName = formStr(EditCashOrder); ; args.name(formName); args.caller(element); args.record(< >); // <<-- EditCashOrder = classFactory.formRunClass(args); EditCashOrder.run(); EditCashOrder.init(); EditCashOrder.wait(); CashTable_ds.executeQuery(); } X++: ... super(); < > = this.args().record(); // <<-- Каким образом дальше использовать полученный на второй форме курсор - это уже другой вопрос. Я бы создал на второй форме такой же датасорс как и на первой, и отфильтровал бы его по RecId текущей записи. |
|
|
За это сообщение автора поблагодарили: Pat4kord (1). |
07.02.2013, 10:15 | #3 |
Участник
|
либо сделайте проще:
1. сделайте форме 2 менюитем 2. перетащите этот менюитем на форму 1 3. в свойствах созданной по менюитему кнопки укажите нужный датасорс 4. с открытой формы 1 открываете форму 2 и все |
|
07.02.2013, 10:22 | #4 |
Участник
|
Сделал вторым предложенным вариантом все работает, еще раз всем огромное спасибо, у DAX- а просто отличное сообщество.
|
|