8.2.0.20240104版本单据页面点击审核后页签自动关闭问题的解决方案
金蝶云社区-Kliaa
Kliaa
7人赞赏了该文章 315次浏览 未经作者许可,禁止转载编辑于2024年01月11日 10:50:01

【问题描述】其他出库单已配置审批工作流,单据流程配置中心高级设置了任务完成后保持原状,安装8.2.0.20240104最新补丁后,在单据页面点击审核,审核完后,没有保持原状,会迅速关闭界面并跳到其他出库单列表。

【解决方案】BOS中,单据工作流任务处理(唯一标识:WF_BillAssignApproval)添加Python插件,代码如下:

import clr
clr.AddReference("mscorlib")
clr.AddReference("Kingdee.BOS")
clr.AddReference("Kingdee.BOS.Core")
clr.AddReference("System.Data")
clr.AddReference("System.Core")
clr.AddReference("Kingdee.BOS.DataEntity")
clr.AddReference("Kingdee.BOS.Workflow.PlugIns")
from System import *
from System.Data import *
from System.Collections.Generic import *
from Kingdee.BOS.DataEntity import *
from System.Reflection import *
from Kingdee.BOS.Workflow.PlugIns import *
from Kingdee.BOS import *
from Kingdee.BOS.Core.DynamicForm.PlugIn import *
from Kingdee.BOS.Core.DynamicForm.PlugIn.Args import *
from Kingdee.BOS.Log import *

def AfterCreateModelData(e):
    try:
        proxy = this.View.GetService[DynamicFormViewPlugInProxy]()
        billApprovalPlugIn = proxy.PlugIns[0]
        if billApprovalPlugIn is not None:
            billApprovalType = TypesContainer.GetOrRegister("Kingdee.BOS.Workflow.PlugIns.BillAssignmetApproval,Kingdee.BOS.Workflow.PlugIns")
            billApprovalTypeInst = Activator.CreateInstance(billApprovalType)
            flags = BindingFlags.Instance | BindingFlags.GetField | BindingFlags.NonPublic
            billPageInfo = billApprovalTypeInst.GetType().GetField("_billPageId", flags)
            if billPageInfo is not None:
                billPageInfo.SetValue(billApprovalPlugIn, None)
    except Exception as ep:
        Logger.Error("WF_BillAssignApproval- AfterCreateModelData",str(ep),None)

本文转载自:金蝶工单系统

作者:总部研发老师

原文链接:无

赞 7