销售订单新变更单反编译代码逻辑剖析

有很多客户想要实现自定义单据的变更,并且想了解标准的销售订单新变更单的变更逻辑,本文从代码反编译角度剖析整个销售订单新变更流程。注意本文会绕过一些校验之类的代码说明,仅演示和说明核心逻辑的反编译代码,且默认认为客户在销售管理系统参数中勾选了参数'启用订单新变更单(支持自定义字段变更和审批流)'。
销售订单新变更单元数据继承至销售订单,这种继承关系带来的一个好处就是销售订单单据上添加的二开字段自动会应用到销售订单新变更单上,且这两种单据的数据包对象DynamicObject的结构基本类似,代码逻辑仅需要考虑一些特殊字段。从销售订单点击'订单变更'按钮开始,如果一些校验通过,就会触发AfterDoOperation,'订单变更'菜单按钮配置了操作代码OrderChange,在此操作中调用了销售订单新变更单的单据弹出框,反编译代码如下图1-1所示:

图1-1
在上图1-1中传了销售订单内码ID到销售订单新变更单,然后在销售订单新变更单的单据插件中通过方法XSaleOrderEdit.OnInitialize读取到销售订单内码,并调用BOS方法 BusinessDataServiceHelper.Load(this.Context, new object[] { 原始销售订单内码 }, meta.BusinessInfo.GetDynamicObjectType()); 得到原始销售订单数据包,并记录到XSaleOrderEdit.m_BaseOrderData
销售订单新变更单反编译代码逻辑剖析
有很多客户想要实现自定义单据的变更,并且想了解标准的销售订单新变更单的变更逻辑,本文从代码反编译角度剖析整个销售订单新变更流...
点击下载文档文档为doc格式
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
上一篇
已经是第一篇



