2010-09-02 2 views
1

Я добавил элемент объекта к классу InventMovement и создал один метод параметров для того же, но следующая строку коды выскакивают выше ошибки:Microsoft Dynamics AX 2009: Ошибка при выполнении код: Неправильные типы аргументов в переменном присвоении

movement.parmProdJournalId(this.JournalId); 

JournalId parmProdJournalId(JournalId _prodJournalId = prodJournalId) 
{ 
    ; 
    prodJournalId = _prodJournalId; 
    return prodJournalId; 
} 

После добавления элемента объекта и метода параметра я также скомпилировал Forward InventMovement, но не успел. Будет признателен, если кто-нибудь из вас может помочь мне в этом отношении

Rgds

PS: Я делаю то же самое, о котором упоминается в этом блоге: http://www.artofcreation.be/2009/04/04/wrong-argument-types-in-variable-assignment/

+0

могли бы вы предоставить некоторый код, в основном для 'parmProdJournalId'? И какой объект является «этим»? –

+0

Первая строка, т. Е. Motion.parmProdJournalId (this.JournalId); был добавлен в метод вставки таблицы «ProdJournalProd», а остальная часть кода добавлена ​​в класс InventMovement. «это» относится к таблице «ProdJournalProd». – haroonattari

+0

Какой тип prodJournalId? Вы не указали, где это объявлено. –

ответ

1

Я остановил AOS, переименован AXAPD.AOI файл и перезапущены AOS. Это решило проблему. Я получил это решение с другого форума, на котором также я разместил этот вопрос.

+0

Любопытно: вы пробовали без переименования файла? –

+0

, вы должны принять ваш ответ, поскольку он вам помог. Просто установите флажок слева от ответа под подсчетом upvotes/downvotes. –

0

Это вроде странно, должен работать ,
Я не мог воспроизвести вашу проблему, но у меня была аналогичная проблема. Решила его путем повторной компиляции и синхронизации всех задействованных классов и таблиц (несколько раз).
Также убедитесь, что никто не использует ни один из этих объектов, возможно, лучше всего перезапустить AOS.

EDIT (после комментария на вопрос):
Еще одна возможность: швы, что вы также смешивание JournalId и ProdJournalId.
Я думаю, что значение параметра и возвращаемое значение parmProdJournalId также должно быть ProdJournalId.
Просто попробуйте это один:

ProdJournalId parmProdJournalId(ProdJournalId _prodJournalId = prodJournalId) 
{ 
    ; 
    prodJournalId = _prodJournalId; 
    return prodJournalId; 
} 

мог не попробовать себя, так как я could'nt воспроизвести ошибку

+0

Вы хотите перезапустить AOS или машину? – haroonattari

+0

AOS ... иногда (скомпилированный) код кэшируется в нем (как я слышал). Также редактирование/добавление ответа. –

0

Если вы не можете перезапустить AOS, удалить локальные файлы кэша клиента может работать, например, * .auc от: C: \ Documents и Settings \ Local Settings Data \ Application