Files
GateDge2023_ljy/00.未分类/销售出库单根据物料号码跟批号带出仓库跟仓位.py
PastSaid fa480006a8 1
2024-07-16 10:33:50 +08:00

44 lines
1.7 KiB
Python

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 DataChanged(e):
if e.Field.Key == "FLot":
# raise Exception(str(JsonUtil.Serialize(e.NewValue)))
SetEntryData(e.NewValue, e.Row)
def SetEntryData(lotVal,row):
materialObjVal = this.View.Model.GetValue("FMaterialID", row)
materialVal = 0 if materialObjVal == None else materialObjVal["Id"]
if materialVal != 0 and lotVal != "" :
sqlL = """ EXEC INVENTORYData_20240710 {0} ,'{1}' """.format(materialVal,lotVal)
datas = DBServiceHelper.ExecuteDynamicObject(this.Context, sqlL)
if datas != None and datas.Count > 0:
data = datas[0]
stockIdVal = data["FSTOCKID"];
stockLocIdVal = data["FSTOCKLOCID"];
this.Model.SetItemValueByID("FStockID", stockIdVal, row);
this.Model.SetItemValueByID("FStockLocID", stockLocIdVal, row);
else :
this.Model.SetItemValueByID("FStockID", 0, row);
this.Model.SetItemValueByID("FStockLocID", 0, row);