我的任务是在DAX 2012中扩展产品收据的总帐过帐。
2012年,在我看来,微软开始从使用传统的LedgerVoucher,LedgerVoucherObject和LedgerVoucherTransObject方式过渡到总帐管理系统,转而使用源文档框架。
在我的情况下,我将扩展总帐过帐,以便在进行产品收货时进行额外过帐。 现在,在进行产品收据更新时,实际上会创建两个凭证。一种是产品实际收货的核算,另一种是产品收货时的应计责任(这是在产品模型组/(现场组“分类帐集成”)/(现场)产品收货的累计责任上设置的。
我设法通过修改类InventMovement和使用LedgerVoucherTransObject :: newTransactionsAmountDefault处理方法的updateLedgerPhysical方法来扩展其中一张优惠券的发布。
我通过使用调试器并在上面提到的方法中放置一个断点,然后在调用堆栈中回溯跟踪到哪里找到正确的方法。
但是对于其他凭证(应计负债),我无法在哪里查找实际的总帐过帐,因为在我看来,ledgerVOucherTransObject的addTrans方法从未被调用过这个凭证?!?!? !
我尝试使用CIL在AOS上进行调试而没有执行CIL,我怀疑源文档框架使用除LedgerVoucher类之外的其他方法发布到总帐。
有没有人对源文档框架有任何经验,特别是如何使用这个框架工作添加总帐过帐,在我的情况下,我必须寻找合适的地方进行我的修改。
答案 0 :(得分:0)
一些放置断点并开始查看的地方是AccountingDistributionProcessor,SourceDocumentLineProcessor和SubledgerJournalizer类。所有这些类都提供扩展点,您可以在其中扩展和执行其他工作。我强烈建议不要直接修改框架类,因为这些类用于系统中的所有源文档,并且比产品收据具有更广泛的影响。
答案 1 :(得分:-2)
您的问题的最后一部分,源文档框架,在这里解决:
Extending the Source Document Framework和here regarding amounts。