|
03.09.2007, 12:23 | #1 |
Сотрудник SMART business
|
Добавочные проводки по накладной на Заказ клиента
Проблема следующая - жизненная необходимость заставляет формировать дополнительные проводки при разноске накладной по Заказу клиента.
Все было бы красиво и хорошо, если бы проводки которые были добавлены к voucher там бы и остались. А именно - при разноске накладной добавляется пара проводок которая повязывается между собой бондом. Но видимо в дальнейшем эта пара проводок для заказа пересматривается, так как в документе ГК по заказу этих проводок нет, но есть их следы (различная аналитика на дебетовой и кредитовой проводках). Аналогичная схема доп.проводок примененная на Закупке привела к 100% успеху. Вопрос - кто-то с таким сталкивался? А то Axapta уже пожрала мой моск, пока я пытался обозначить проблемное место... Используется 3.0 SP3
__________________
С уважением, Игорь "Ингар" Ильяшенко |
|
03.09.2007, 12:57 | #2 |
Мрачный тип
|
Вопрос - что за проводки ? По какой части закупки они образуются - по списанию номенклатуры со склада, по задолженности клиента, по налогам ?
Где вы делали их добавление ? После ответа на эти вопросы будет яснее , где что и как ... |
|
03.09.2007, 13:20 | #3 |
Сотрудник SMART business
|
Цитата:
По списанию номенклатуры Отражают внутрихолдинговые затраты (счет-в-счет с разной аналитикой) Добавление - updateLedgerPhysical класса InventMovent с условием mustBeBookedPhysicallyIntercompany(новодобавленное) для класса InvMov_Sales Два раза _ledgerVoucher.addTrans с соответсвующими параметрами и суммами Сразу после этого - подвязка бондом. И что, собака, характерно, при обработке по addTrans проходит - как дети в школу. Счета правильные, аналитика - как должна быть, а в результате проводок нет и только и видно что разная аналитика в проводках по 36 и 73...
__________________
С уважением, Игорь "Ингар" Ильяшенко |
|
03.09.2007, 14:15 | #4 |
Мрачный тип
|
1) InventMovement и его разноску трогать - IMHO, слишком грубо, там только то, что является общим для ВСЕХ типов движения номенклатуры. Мы поначалу тоже туда полезли, но вовремя спохватились и перенесли в переопределенные у соотвествующих потомков методы.
2) Все корректно выполнено с добавкой проводки? ledgerBondClient'у добавили новый объект (методом addNewLogObject), потом добавили проводку (2 записи), потом ledgerBondClient'ом скорреспондировали и очистили лог ledgerBondClient'а ? P.S. про протоколирование разноски движения номенклатуры в InventTransPosting не забудьте В противном случае в момент пересчета/закрытия склада Вы по счетам второй проводки можете суммовой дисбаланс получить. |
|
03.09.2007, 14:26 | #5 |
Сотрудник SMART business
|
Цитата:
Сообщение от TasmanianDevil
1) InventMovement и его разноску трогать - IMHO, слишком грубо, там только то, что является общим для ВСЕХ типов движения номенклатуры. Мы поначалу тоже туда полезли, но вовремя спохватились и перенесли в переопределенные у соотвествующих потомков методы.
2) Все корректно выполнено с добавкой проводки? ledgerBondClient'у добавили новый объект (методом addNewLogObject), потом добавили проводку (2 записи), потом ledgerBondClient'ом скорреспондировали и очистили лог ledgerBondClient'а ? P.S. про протоколирование разноски движения номенклатуры в InventTransPosting не забудьте В противном случае в момент пересчета/закрытия склада Вы по счетам второй проводки можете суммовой дисбаланс получить. Или вы перегружали метод и сначала super(), а потом уже свои модификации? Хм.. Так действительно долно получится элегантнее. Хм... ledgerBondClient - проверю вечерком. Определенно - там сделал не так. Вяжемся на существующий и связываю две последние добавленные. Спасибо.
__________________
С уважением, Игорь "Ингар" Ильяшенко |
|
04.09.2007, 07:22 | #6 |
Мрачный тип
|
Поглядите в стандартной части насчет ledgerBondClient'а, как там корреспондируются проводки в ГК после каждой пары вызовов _ledgerVoucher.addTrans().
А насчет места размещения разноски - смотрите, Ваше дело. Просто вызов Вашего метода mustBeBookedPhysicallyIntercompany() для проверки, насколько я понимаю, находится в методе разноски у родительского класса и будет выполняться у всех потомков, не имеющих переопределения этого метода разноски. |
|
|
За это сообщение автора поблагодарили: Ингар (1). |
04.09.2007, 11:12 | #7 |
Сотрудник SMART business
|
Цитата:
Сообщение от TasmanianDevil
Поглядите в стандартной части насчет ledgerBondClient'а, как там корреспондируются проводки в ГК после каждой пары вызовов _ledgerVoucher.addTrans().
А насчет места размещения разноски - смотрите, Ваше дело. Просто вызов Вашего метода mustBeBookedPhysicallyIntercompany() для проверки, насколько я понимаю, находится в методе разноски у родительского класса и будет выполняться у всех потомков, не имеющих переопределения этого метода разноски. Да. В методе разноски. Но он определен в родителе и для родителя и всех его потомков он по умолчанию - false. В потомках для которых необходимо произвести данный вид разноски он "перегружен" и возвращает true. Таким образом мне для того что бы добавить такую же разноску по еще одному журналу достаточно для класса журнала "взвести" этот признак.
__________________
С уважением, Игорь "Ингар" Ильяшенко |
|
Теги |
ax3.0 |
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|