python 校验入库数量不允许上游单据领料数量

根据源单单号校验本次入库数量不允许超过领料数量
import clr
clr.AddReference('System')
clr.AddReference('Kingdee.BOS')
clr.AddReference('Kingdee.BOS.Core')
clr.AddReference('Kingdee.BOS.Contracts')
clr.AddReference('Kingdee.BOS.DataEntity')
clr.AddReference('Kingdee.BOS.ServiceHelper')
from Kingdee.BOS import *
from Kingdee.BOS.Core import *
from Kingdee.BOS.Core.Bill import *
from Kingdee.BOS.Core.DynamicForm.PlugIn import *
from Kingdee.BOS.Core.DynamicForm.PlugIn.ControlModel import *
import System
from Kingdee.BOS.Core.DynamicForm.PlugIn.Args import EndOperationTransactionArgs
from Kingdee.BOS.Orm.DataEntity import *
from Kingdee.BOS.Core.Metadata import *
from Kingdee.BOS.Contracts import *
from Kingdee.BOS.ServiceHelper import *
def BarItemClick(e):
if (e.BarItemKey=="tbSplitSave" or e.BarItemKey=="tbSplitSubmit"):
row = this.Model.GetEntryRowCount("FEntity");
i=0;
merged_data = {};##定义数组
rows_data={};
srcNoP = this.Model.GetValue("FSRCBILLNO",0);
if srcNoP== None or srcNoP=='':
msg ='MSG:';
else:
for i in range(0,row):
comb = this.Model.GetValue("F_ora_Text",i);
srcNo = this.Model.GetValue("FSRCBILLNO",i);
if comb==None or comb=='':
comb=' ';
if srcNo==None or srcNo=='':
srcNo=' ';
curQTY = this.Model.GetValue("FQTY",i);
spec = comb +'$'+ srcNo;##查找每行的源单编号与文本字段COMB后使用$组合
if spec in merged_data:
merged_data[spec] += curQTY
else:
merged_data[spec] = curQTY
separator="$";
msg ='MSG:';
for i in merged_data:
comb = i.split(separator)[0];##拆分数组的comb字段与源单编号字段
srcNo =i.split(separator)[1];##拆分数组的comb字段与源单编号字段
if comb==None or comb=='':
comb=' ';
if srcNo==None or srcNo=='':
srcNo=' ';
pdQTY = sqlReturn_PDQTY(str(srcNo),str(comb));
inQTY = sqlReturn_QTY(str(srcNo),str(comb));
if inQTY == None:
inQTY=0;
if pdQTY == None:
pdQTpython 校验入库数量不允许上游单据领料数量
根据源单单号校验本次入库数量不允许超过领料数量import clrclr.AddReference('System')clr.AddReference('Kingdee.BOS')clr.AddReference(...
点击下载文档文档为doc格式
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
上一篇
已经是第一篇



