21.12.2016, 00:58 | #1 |
Участник
|
Dax12 как записать в коде в значения в args.Record() и в args.parm()
Добрый вечер ,
Dax2012 R3 подскажите пожалуйста в таком вопросе. Для тестовых целей нужно из джоба или из тестового класса передать в менюитем связанный с формой значения, записанные в args.record и . args.parm. эти значения принимаются формой и обрабатываются. есть вот такой код в тестовом классе static void main (Args _args) { Args args = new Args(); MenuFunction menuFunction; ; args.record(CustTable::find('2000050')); args.parm(con2str(["1225", "0011555"], ",")); menuFunction = new MenuFunction(menuitemDisplayStr(BestCustomerForm), MenuItemType: Display); menuFunction.run(args); } этот код не работает. в дебагере видно что: после выполнения args.record , объект record в args не инициализируется , после выполнения args.parm, parm не инициализируется. такой же код создала в акс9, там по-другому. в дебагере видно что : после выполнения args.record , объект record в args не инициализируется , после выполнения args.parm, parm инициализируется. Последний раз редактировалось Aquarius; 21.12.2016 в 01:03. |
|
21.12.2016, 01:18 | #2 |
Читатель
|
А в форме args.parm и args.record чему равны?
|
|
21.12.2016, 07:49 | #3 |
Участник
|
Цитата:
Сообщение от Aquarius
Добрый вечер ,
Dax2012 R3 подскажите пожалуйста в таком вопросе. Для тестовых целей нужно из джоба или из тестового класса передать в менюитем связанный с формой значения, записанные в args.record и . args.parm. эти значения принимаются формой и обрабатываются. есть вот такой код в тестовом классе static void main (Args _args) { Args args = new Args(); MenuFunction menuFunction; ; args.record(CustTable::find('2000050')); args.parm(con2str(["1225", "0011555"], ",")); menuFunction = new MenuFunction(menuitemDisplayStr(BestCustomerForm), MenuItemType: Display); menuFunction.run(args); } этот код не работает. в дебагере видно что: после выполнения args.record , объект record в args не инициализируется , после выполнения args.parm, parm не инициализируется. такой же код создала в акс9, там по-другому. в дебагере видно что : после выполнения args.record , объект record в args не инициализируется , после выполнения args.parm, parm инициализируется. |
|
21.12.2016, 09:26 | #4 |
Участник
|
Попробуйте такой код. В инфолог выводится информация о клиенте, чтобы удостовериться, что args.record() действительно получает конкретную запись из таблицы клиентов.
X++: public static void callFormWithArgsJob(Args _args) { Args args = new Args(); FormRun formRun; CustTable custTable; ; args.record(CustTable::find('2000050')); args.parm(con2str(["1225", "0011555"], ",")); custTable = args.record(); info(strFmt("Customer: %1", custTable.AccountNum)); info(strFmt("Parameter: %1", args.parm())); formRun = new MenuFunction(menuitemDisplayStr(BestCustomerForm), MenuItemType::Display).create(args); formRun.run(); }
__________________
// no comments Последний раз редактировалось dech; 21.12.2016 в 09:29. |
|