#引入clr运行库 import clr #添加对cloud插件开发的常用组件引用 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.Contracts') clr.AddReference('Kingdee.BOS.DataEntity') clr.AddReference('Kingdee.BOS.ServiceHelper') #dairycloud基础库中的常用实体对象(分命名空间导入,不会递归导入) from Kingdee.BOS.Core import * from Kingdee.BOS.Util import * from Kingdee.BOS.Core.Bill import * from Kingdee.BOS.Core.Bill.PlugIn import * from Kingdee.BOS.Orm.DataEntity import * from Kingdee.BOS.Core.DynamicForm.PlugIn import * from Kingdee.BOS.Core.DynamicForm.PlugIn.Args import * from Kingdee.BOS.Core.DynamicForm.PlugIn.ControlModel import * from System import * from System.Data import * from Kingdee.BOS.App.Data import * from System.Collections.Generic import List from Kingdee.BOS.ServiceHelper import * # def OnPreparePropertys(e): # e.FieldKeys.Add("F_CYG_Worktype") def EndOperationTransaction(e): # 保存8提交9审核1反审核26 if this.FormOperation.Operation == "Release": #投放 if e.DataEntitys != None and e.DataEntitys.Count > 0: idList = set(map(lambda x : str(x["Id"]),e.DataEntitys)) sql ="""/*dialect*/ UPDATE t0e SET t0e.FMJDZDZID = t1.FMJDZDZID FROM T_PRD_MOENTRY t0e --INNER JOIN T_PRD_MOENTRY_LK t0e_lk on t0e.FENTRYID = t0e_lk.FENTRYID INNER JOIN T_ENG_BOM t1 on t0e.FBOMID = t1.FID INNER JOIN T_PLN_PLANORDER t2 on t2.FBILLNO = t0e.FSRCBILLNO WHERE 1 = 1 AND t0e.FSRCBILLTYPE = 'PLN_PLANORDER' --AND t2.FID IN ({0}) UPDATE t0 SET t0.FMJDZDZID = t1.FMJDZDZID FROM T_PRD_PPBOM t0 INNER JOIN T_ENG_BOM t1 on t0.FBOMID = t1.FID INNER JOIN T_PRD_MOENTRY t2e on t2e.FENTRYID = t0.FMOENTRYID INNER JOIN T_PLN_PLANORDER t3 on t3.FBILLNO = t2e.FSRCBILLNO WHERE 1 = 1 AND t2e.FSRCBILLTYPE = 'PLN_PLANORDER' AND t3.FID IN ({0}) """.format(",".join(idList)) DBUtils.Execute(this.Context,sql)