import clr clr.AddReference("System") clr.AddReference("Kingdee.BOS") clr.AddReference("Kingdee.BOS.Core") clr.AddReference("Kingdee.BOS.DataEntity") clr.AddReference("Kingdee.BOS.App") clr.AddReference("Kingdee.BOS.Contracts") clr.AddReference("Kingdee.BOS.ServiceHelper") from Kingdee.BOS import * from Kingdee.BOS.Core import * from Kingdee.BOS.Core.Metadata.EntityElement 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.Util import * from System import * from System.ComponentModel import * from System.Collections.Generic import * from System.Text import* from Kingdee.BOS.ServiceHelper import * def AfterCreateNewData(e): details = this.View.BusinessInfo.GetEntity("FContractPlan") entrys = this.View.Model.GetEntityDataObject(details) dataJson = [{"name":"预付","FRecAdvanceRate":0} ,{"name":"发货","FRecAdvanceRate":0} ,{"name":"到货","FRecAdvanceRate":0} ,{"name":"验收","FRecAdvanceRate":0} ,{"name":"质保","FRecAdvanceRate":0}] # "预付" if FMaterialSeq == 1 else "发货" if FMaterialSeq == 2 else "到货" if FMaterialSeq == 3 else "验收" if FMaterialSeq == 4 else "质保" if entrys != None and entrys.Count > 0: contractAmount = this.View.Model.GetValue("FCONTRACTAMOUNT") countRecAdvanceRate = 0 for entry in entrys: rowIndex = this.View.Model.GetRowIndex(details, entry) if rowIndex > 4: continue entry["F_CYG_Text"] = dataJson[rowIndex]["name"] recAdvanceRate = dataJson[rowIndex]["FRecAdvanceRate"] countRecAdvanceRate = countRecAdvanceRate + recAdvanceRate entry["FRecAdvanceRate"] = recAdvanceRate entry["FRecAdvanceAmount"] = recAdvanceRate / 100 * contractAmount # def EndOperationTransaction(e): # if this.FormOperation.OperationId == 8: # SaveEndUpdateCrmContractId(e) # # 保存时,赋值销售合同id # def SaveEndUpdateCrmContractId(e): # for data in e.DataEntitys: # billId = data["Id"] # def AfterCreateNewData(e): # details = this.View.BusinessInfo.GetEntity("FContractPlan") # entrys = this.View.Model.GetEntityDataObject(details) # dataJson = [{"name":"预付","FRecAdvanceRate":0} # ,{"name":"发货","FRecAdvanceRate":0} # ,{"name":"到货","FRecAdvanceRate":0} # ,{"name":"验收","FRecAdvanceRate":0} # ,{"name":"质保","FRecAdvanceRate":0}] # # "预付" if FMaterialSeq == 1 else "发货" if FMaterialSeq == 2 else "到货" if FMaterialSeq == 3 else "验收" if FMaterialSeq == 4 else "质保" # if entrys != None and entrys.Count > 0: # contractAmount = this.View.Model.GetValue("FCONTRACTAMOUNT") # countRecAdvanceRate = 0 # for entry in entrys: # rowIndex = this.View.Model.GetRowIndex(details, entry) # if rowIndex > 4: # continue # entry["F_CYG_Text"] = dataJson[rowIndex]["name"] # recAdvanceRate = entry["FRecAdvanceRate"] # recAdvanceRate = dataJson[rowIndex]["FRecAdvanceRate"] if recAdvanceRate == 0 else recAdvanceRate # countRecAdvanceRate = countRecAdvanceRate + recAdvanceRate # entry["FRecAdvanceRate"] = recAdvanceRate # entry["FRecAdvanceAmount"] = recAdvanceRate / 100 * contractAmount # if countRecAdvanceRate == 0: # this.View.Model.SetValue("FRecAdvanceRate", 100, 0) # this.View.Model.SetValue("FRecAdvanceAmount", contractAmount, 0) # def DataChanged(e): # if e.Field.Key == "FRecAdvanceRate": # contractAmount = this.View.Model.GetValue("FCONTRACTAMOUNT") # recAdvanceRate = e.NewValue # rowIndex = e.Row # recAdvanceAmount = recAdvanceRate * contractAmount / 100 # this.View.Model.SetValue("FRecAdvanceAmount", recAdvanceAmount, rowIndex)