22.03.2013, 16:33 | #1 |
Участник
|
Разноска заказа в ах2012
Уважаемые господа!
Появилась задача сделать модификацию выполняемую вместе с разноской отгрузочной накладной. Раньше (в ах2009) можно было отловить событие writeJournal для SalesFromLetter_PickingList, в ax2012 же не удалось понять как и где происходит разноска. Можете ли посоветывать в какую сторону копать? По какому принципу теперь выполняется код разноски? C уважением, Дмитрий. |
|
22.03.2013, 16:40 | #2 |
Участник
|
В 2012 разделили создание документа и его разноску.
Посмотрите классы \Classes\SalesInvoiceJournalCreate \Classes\SalesInvoiceJournalPost |
|
22.03.2013, 16:45 | #3 |
Участник
|
Ставили точки останова в классах
\Classes\SalesPickingListJournalCreate \Classes\SalesPickingListJournalPost в методах updateJournalLine updateSourceTable и многих других... Она туда не ходит, остановки не происходит С уважением, Дмитрий. |
|
22.03.2013, 16:48 | #4 |
Участник
|
Отключено ли выполнение кода в IL в настройках пользователя (раздел Development)?
Еще можно включить трассировку SQL и посмотреть коллстеки |
|
|
За это сообщение автора поблагодарили: DmitryK (1). |
22.03.2013, 16:51 | #5 |
Участник
|
Поставке breakpoint на вставке проводки insert(). на таблице. если и так не получится, то в момент insert() для код пользователя вывести стэк вызывов в файлик текстовый. а потом не забудьте убрать.
|
|
24.03.2013, 11:56 | #6 |
Участник
|
Цитата:
X++: generalJournalAccountEntry.skipDeleteActions(true); generalJournalAccountEntry.skipDataMethods(true); generalJournalAccountEntry.skipEvents(true); |
|
|
За это сообщение автора поблагодарили: Logger (3). |
24.03.2013, 21:02 | #7 |
Участник
|
Цитата:
Еще помогает небольшая доработка логирования Sysdatabaselog - если писать туда еще и стек вызовов, то все становится проще. Особенно когда надо разобраться постфактум. |
|
|
За это сообщение автора поблагодарили: Bega (5). |
28.03.2013, 13:57 | #8 |
Участник
|
Всем спасибо за отклики. Т.е. сбросом галочки настроек пользователя и установкой галочек в АОС можно добиться отладки кода....
При просмотре кода в 2012 удалось обнаружить интересные конструкции: для switch X++: switch (checkPattern) { case [ TaxBaseType::AmountByUnit, "" ] : percent = TaxData::find(_taxCode, _date, 0).TaxValue; if(percent) X++: [SysOperationJournaledParametersAttribute(true)] class SalesFormLetter_PickingList extends SalesFormLetter { } X++: custInvoiceTable = args.record() as CustInvoiceTable; Может кто видел еще интересный синтаксис? C уважением, Дмитрий. |
|
28.03.2013, 14:14 | #9 |
Участник
|
|
|
|
За это сообщение автора поблагодарили: DmitryK (1). |
28.03.2013, 14:14 | #10 |
Участник
|
RTFM
|
|
28.03.2013, 14:41 | #11 |
Administrator
|
Что нового в АХ 2012 для разработчиков:
http://msdn.microsoft.com/en-us/library/gg843765.aspx Дока по атрибутам в декларации класса: http://msdn.microsoft.com/en-us/library/gg846588.aspx Дока по ключевому слову as http://msdn.microsoft.com/en-us/library/gg843452.aspx А в switch .. case лежит обычный контейнер
__________________
Возможно сделать все. Вопрос времени |
|
|
За это сообщение автора поблагодарили: Logger (3), DmitryK (1). |
Теги |
ax2012, заказ на продажу |
|
|