AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 04.07.2018, 01:26   #1  
kitty is offline
kitty
Участник
 
370 / 30 (2) +++
Регистрация: 24.05.2005
DIXF ошибка: running in CIL on the client
Выполняется пакетное DIXF задание. В его классе- обрааботчике создается запись в document handling. Исполнение валится с ошибкой "Stack trace: Invalid attempt to call DocuActionArchive.Add running in CIL on the client. Data written to target ' <MyTable>' ('0' records created, '0' records updated)
Уже переместила соответствующий код в static server метод, но ошибка остается

Почему , не смотря на то, что задание пакетное, ошибка ссылается на CIL в клиенте?

Спасибо
Старый 04.07.2018, 06:27   #2  
SRF is offline
SRF
Участник
MCBMSS
Axapta Retail User
 
375 / 562 (19) +++++++
Регистрация: 08.08.2007
Записей в блоге: 1
В целом, если вы правильно перенесли вызов метода на сервер, пересобрали CIL, то ошибка скорее всего стала вываливаться в другом методе, либо этот метод все еще вызывается где то в загрузчике.

Посмотрите в стандарте в класс загрузки картинок для номенклатуры. Я его использовал для загрузки картинок в пакетном режиме, правда у меня добавлялась ссылка через url, но помещение в архив реализовано через класс EcoResProductImageArchive наследник от DocuActionFile, причем в заголовке класса написано

/// <summary>
/// The <c>EcoResProductImageArchive</c> class creates a <c>DocuValue</c> when an image attaches to the
/// product or item.
/// </summary>
/// <remarks>
/// This class is replica of the <c>DocuActionArchive</c> class. This class cannot use the
/// <c>DocuActionArchive</c> class because its RunOn property is set to Client. So created this class
/// as a duplicate to the <c>DocuActionArchive</c> class and set its RunOn property to be called so
/// that it can be used both in client and in IL execution.
/// </remarks>

Попробуйте использовать класс EcoResProductImageArchive, либо сделайте наследника по аналогии с ним, и добавьте нужную вам логику в метод add.
__________________
Sergey Nefedov
За это сообщение автора поблагодарили: kitty (1).
Старый 04.07.2018, 07:27   #3  
kitty is offline
kitty
Участник
 
370 / 30 (2) +++
Регистрация: 24.05.2005
Спасибо больоше. Все именно так. Не заметила, что сам класс DocuActionArchive на клиенте RunOn имеет. Нашла описание и решение той же проблемы вот тут : https://community.dynamics.com/ax/b/...namics-ax-2012 Сделала также. Вроде, работает. Надеюсь, без подводных каменей обойдется. Зачем-то же его сделали RunOn = client изначально....
За это сообщение автора поблагодарили: mallard (2).
Старый 04.07.2018, 08:29   #4  
skuull is offline
skuull
Участник
Most Valuable Professional
Лучший по профессии 2014
 
700 / 752 (27) +++++++
Регистрация: 08.03.2013
Адрес: ХЗ
Ну в блоге же написано, там вызовы WinAPI который клиентский из-за него и метод клиентский. Можно было бы ифов наставить если сервер то серверный но видимо было лень или никто не просил.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Why your method is still not running in CIL Blog bot DAX Blogs 0 06.02.2018 23:11
Ошибка при создании CIL: signature is incorrect Pandasama DAX: Программирование 5 07.11.2014 11:45
bojensen: Stack trace: Invalid attempt to call WinAPI::findFirstFile running in CIL on the client. Blog bot DAX Blogs 0 21.07.2013 21:11
emeadaxsupport: Running AX 2009 Client raises error: "An invalid directory structure for Microsoft Dynamics AX was detected" Blog bot DAX Blogs 0 01.04.2011 06:13
Русская локализация Axapta 3 ? SlavaK DAX: Администрирование 59 01.07.2003 22:38

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 23:09.