帖子会抽时间不定期更新直到基本完善
一、应收应付计划生成逻辑:
总的分组逻辑参考:https://vip.kingdee.com/article/555777747285450752?productLineId=1&lang=zh-CN
1、表单插件生成计划逻辑:datachange事件根据明细生成
2、单据转换生成计划逻辑:afterconvert事件根据明细生成
二、二开思路:
生成计划的过程涉及3个不同的场景:
①下推的过程中生成场景,
②单据上修改会影响计划相关的字段触发生成的场景
③还有一个是核销过程中生成冲回单或者调整单的过程中生成计划的场景。
以下是针对场景②的二开方案:
1、在按物料收付款的前提下按自己想要的维度生成计划:
继承表单插件:Kingdee.K3.FIN.Business.PlugIn.ArAPableBillEdit重写方法GetEntryGroup生成自己想要的分组后的数据包。生成计划会根据这个方法返回的数据包生成计划行。
相关变量字段赋值说明
string mIdFieldName = "MATERIALID_Id";
protected const string FORDERNUMBER = "FORDERNUMBER";
FORDERENTRYID : 单据体明细中订单明细ID
2、在按到期日收付款的前提下生成自己想要的计划:
2.1:方案一:可在保存的时候触发生成计划数据包覆盖原生成的数据包。
2.2:方案二:继承表单插件Kingdee.K3.FIN.Business.PlugIn.ArAPableBillEdit重写方法ReSetPayRecPlan。重写这个方法会导致标准产品所有的生成计划逻辑都变成自己重写的,会影响到按物料,按订单等其他场景的数据生成,慎用。
推荐阅读