10.02.2009, 14:27 | #1 |
Участник
|
Wrong argument type for function (обновлено)
(AX 4.0.2501.116, SP1, MS SQL Server 2005)
Партнеры внесли изменения в форму (не стандартную аксаптовскую), и при ее открытии начала появляться ошибка (Wrong argument type for function) и трассировка стека: \Classes\FormRun\run \Classes\SysSetupFormRun\run - line 4 Другая форма порадовала похожим — ошибка (Wrong type in field number) и трассировка стека: Forms\InventTrans\Methods\init \Classes\SysSetupFormRun\init - line 3 \Classes\FormDataObject\jumpRef \Classes\FormStringControl\jumpRef \Classes\FormRun\Task \Forms\SGISelMode\Methods\Task \Classes\SysSetupFormRun\Task - line 20 \Classes\FormStringControl\context \Classes\FormRun\task Чисто логически ошибки не видно, но нутром чую — решение должно быть очень простым :-) Помогите, пожалуйста, разобраться! Что сделано: 1) Компилировал (Compile и Compile Forward) все классы — сначала вышеперечисленные, потом вообще все — не помогает. 2) Изменял метод формы init() (из которого и запускается SysSetupFormRun.run()) и компилировал метод. Последний раз редактировалось Shannon; 10.02.2009 в 15:08. |
|
10.02.2009, 14:37 | #2 |
MCTS
|
Если это то же самое, что Неверный тип аргумента для функции, то мне помогало внесение изменений в метод, где происходит ошибка. Пишем пробел, например, в методе init и компилируем. При этом компиляция целиком формы, ни к чему не приводило...
Последний раз редактировалось Eldar9x; 10.02.2009 в 14:39. |
|
10.02.2009, 15:06 | #3 |
Участник
|
Пока что не помогает…
Внес, откомпилировал и перекомпилировал, но ошибка остается…
|
|
10.02.2009, 15:15 | #4 |
Участник
|
на разных слоях может сделали разный список аргументов.
типы аргументов и количество должны совпадать во всех слоях. |
|
10.02.2009, 15:41 | #5 |
Участник
|
Слои разные, но аргументов нет вообще
|
|
10.02.2009, 15:57 | #6 |
Участник
|
Все, есть решение!
Источником проблем была форма, хотя трассировка появлялась в классе.
Меня сбило то, что формы расположены на одном слое, и, следовательно, нельзя переопределить метод на другом слое и с другим набором аргументов. …Зато, оказалось, что можно переопределить на форме метод init() и убрать из него вызов super(). Спасибо за идеи! |
|
|
|