电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

销售订单变更单审核后有条件地自动生效二开案例

来源:金蝶云社区作者:金蝶2024-09-2310

销售订单变更单审核后有条件地自动生效二开案例

    销售订单的变更目前主推是使用销售订单新变更单方式,而老变更方式是通过销售订单下推销售订单变更单方式实现的,两者各有优缺点,新变更单方式支持自定义字段的变更,且一些后面版本添加的新功能只考虑新变更方式,比如受托加工类的销售订单变更保存时校验一些上下游数据时只会考虑新变更单方式,老变更方式不会考虑了,而且老变更单方式基本上也不会维护,只非有比较严重的Bug才会改进,因此建议能用新变更单方式就不要用老变更单方式。老变更单只支持特定字段的变更,不支持自定义字段变更,但它有个优势就是一张多条明细的销售订单能一条一条明细分别下推并生成多张销售订单变更单(即一张销售订单可以同时存在多张未生效的销售订单变更单),而新变更单方式目前不能维持一个销售订单对应多个未生效的销售新变更单。

    审核自动生效默认是通过销售管理系统参数控制,它只能根据组织来隔离参数配置,如果想实现按销售订单变更单上的字段动态决定审核后是否生效,标准默认就不能实现。通过销售订单变更单的工作流程配置审核后动态根据条件调用生效操作其实也是不行的,因为销售订单变更单生效功能写在表单插件里而不是服务端插件,但审核时服务端插件会根据参数决定是否生效,审核服务端插件会通过代码 this.Option.TryGetVariableValue("EffectiveAfterAudit", out effectiveAfterAuditOption);  读取变量 EffectiveAfterAudit 的值,如果此值为1或者销售管理系统参数里勾选了'订单变更单审核后即生效',则审核时自动生效。如标题所示,如果要条件地控制审核自动生效,只需要动态地在服务端插件中设置变量 EffectiveAfterAudit 即可,下面使用Python插件简单地说明下如何根据销售订单变更单的单据类型决定是否要审核自动生效,首先将销售管理系统参数中的'订单变更单审核后即生效'去掉勾选,然后扩展销售订单变更单,在审核操作上挂个Python插件,如下图1-1所示:

图1-1


下面为Python带注释的代码文本(因为网页文本复制会转义空格字符,所以不要直接复制以下文件到BOS IDE里面,请使用文章后面附件里的文本):

import clr
clr.AddReference('System')
clr.AddReference('System.Data')
clr.AddReference('Kingdee.BOS')
clr.AddReference('Kingdee.BOS.Core')
clr.AddReference('Kingdee.BOS.App')
clr.AddReference('Kingdee.BOS.DataEntity')
from System import *
from System.Collections.Generic import *
from Kingdee.BOS.Core.DynamicForm.PlugIn.Args import *
from Kingdee.BOS.App.Data import *
from System.Data import *
from Kingdee.BOS.Orm import *
def OnPrepare

销售订单变更单审核后有条件地自动生效二开案例

销售订单的变更目前主推是使用销售订单新变更单方式,而老变更方式是通过销售订单下推销售订单变更单方式实现的,两者各有优缺点,新...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

已经是第一篇
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信