|
![]() |
#1 |
Участник
|
Цитата:
Сообщение от lvan
![]() как известно, в 2012 к Х++ добавили IL-код
некоторые классы (например наследоваемые от SysOperationServiceController) могут исполняться в IL- коде возникает проблема с отладной работы таких классов. 1й вариант - отдладка IL кода через Visual studio - вроде в одной из демок про это говорилось, сходу не нашел, как это делать. но у меня возник вопрос: может можно как-нибудь настроить, чтобы класс исполнялся в старом добром X++ коде, ну и в целях отладки как-нибудь переключать режим исполнения. Кто-нибудь уже сталкивался, как дебажить такой код? Steps to disable execution of the X++ code in IL: 1) ax32 –development 2) Turn off VCS 3) Close AX client 4) Run AX2012 client configuration utility as administrator 5) Create new configuration based on the original one. Call it SYS. 6) Change application object layer to SYS 7) Enter SYS license code 8) Apply settings 9) ax32 –development 10) In AOT navigate to the Service Groups node. Find AxClient service group 11) Delete FormLetterService from the group (that’s for PO\SO posting. Other services can be removed as well, if needed) 12) Right click on service group and press ‘Deploy Service Group’. That will take some time. 13) Close AX client 14) In AX client configuration utility change configuration to Original 15) Apply settings 16) ax32 –development 17) Turn on VCS |
|
![]() |
#2 |
Участник
|
Знакомые 17 пунктов
![]() Чтоб дебагить студией нужно сделать ей Attach to process на Ax32serv.exe. После этого открыть студией нужный исходник (исходники лежат в Server\[AOS Name]\bin\XppIL\source) и ставить брейкпоинт. По поводу отключения выполнения в IL простых вариантов нет, к сожалению. Теоретически, вместо удаления сервиса из группы (что требует SYS лицензии) можно заменить сервис на фейковый (тоесть создать копию класса сервиса и использовать его в сервисе вместо оригинального). Должно сработать, но я не пробовал. |
|
Теги |
отладка, ax2012 |
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|