使用制造包(JAMS),我试图编写自定义代码以在发布Move事务后触发流程。我应该能够执行MoveEntry类的Release方法的PXOverride,但是在运行时Acumatica抱怨我不能这样做,因为Release不是MoveEntry的成员。这似乎是一个问题,因为MoveEntry是从MoveEntryBase派生的,该方法以无法覆盖的方式编写。
我还尝试覆盖INReceiptEntry类的Release方法,因为释放Move事务会创建INReceipt记录并释放它们。所以我想我可以在每次INReceiptEntry Release调用之后触发我的过程。但是,当我重写此方法时,发布Move事务时不会调用它。我还考虑过可能要重写INReceiptEntry的Persist并检查Released = true。但是,每次调用Persist时,Released = false。我不知道,可能是缓存未更新。
是否有任何方法可以在移动事务完成发布后立即触发流程?
ERP v17.210.0034
JAMS v17.210.0034.42-2018.06.06
答案 0 :(得分:0)
您应该能够覆盖AMReleaseProcess ReleaseDocProc(AMBatch doc)
只需检查文档以获取正确的AMDocType,因为此过程适用于所有MFG交易。
如果要在IN端进行覆盖,则类似于覆盖INDocumentRelease ReleaseDocProcR(JournalEntry je,INRegister doc)并检查文档类型
尝试查看MoveEntry上的按钮并不总是可以运行,因为用户可以使用发布过程屏幕(与“清单”中的设置相同)。 IN输入屏幕上的按钮不用于释放IN事务(使用INDocumentRelease)