29.08.2020, 14:09 | #1 |
Участник
|
DAX2009 Операнд для функции не является элементом
Всем привет.
Подскажите не могу разобратся. При реализации класса импорта из excel в строки не могу разобраться в чем причина ошибки в реализации метода dialog X++: class MyImportFromExcel extends RunBase { ... } ... protected Object dialog(DialogRunbase _dialog, boolean _forceOnClient) { FormRun dialogForm; Args args = new Args(formstr(MyImportFromExcel)); // ошибка: Операнд для функции не является элементом. ; args.caller(this); dialogForm = classFactory.formRunClass(args); dialogForm.init(); return dialogForm; } ... Причем есть аналогичный реализованный класс для импорта в такую же таблицу строк в котором в указан соответственно свой класс импорта в методе dialog: X++: protected Object dialog(DialogRunbase _dialog, boolean _forceOnClient) { FormRun dialogForm; Args args = new Args(formstr(OtherImportFromExcel)); // ошибки нет ; args.caller(this); dialogForm = classFactory.formRunClass(args); dialogForm.init(); return dialogForm; } том классе при компиляции ошибки нет. Причем если я в своем классе меняю вот тут на OtherImportFromExcel: X++: protected Object dialog(DialogRunbase _dialog, boolean _forceOnClient) { FormRun dialogForm; Args args = new Args(formstr(OtherImportFromExcel)); // ошибка пропадает ; args.caller(this); dialogForm = classFactory.formRunClass(args); dialogForm.init(); return dialogForm; } ... ошибка пропадает.. Может есть какой то нюанс? Подскажите. Последний раз редактировалось oleggy; 29.08.2020 в 14:45. |
|
29.08.2020, 14:56 | #2 |
Участник
|
Класс тут вообще не имеет отношения к проблеме.
Метод formstr(...) дает наименование формы с поверкой того, что это именно форма, заданная в AOT. То есть Ваше formstr(MyImportFromExcel) ждет, что MyImportFromExcel это именно форма и совершенно справедливо дает ошибку при условии, что формы с таким наименованием в AOT нет. А вот formstr(OtherImportFromExcel) проходит, потому что форма OtherImportFromExcel есть. PS: вообще достаточно странный способ использования dialog в наследнике RunBase. Посмотрите класс Tutorial_RunbaseForm в качестве примера использования формы в наследнике RunBase. |
|
|
Похожие темы | ||||
Тема | Ответов | |||
AX 2012 R2: ошибка в функции "Операции для аналитик" | 2 | |||
DAX2009 не дружит с VS2010 | 2 | |||
Вопросы по OLAP в DAX2009 | 9 | |||
Аргументы функции | 1 | |||
Вызов экспортируемой функции DLL | 8 |
|