表单插件python:物料基础资料满足条件赋值仓管员、仓库、仓位原创
金蝶云社区-Evan01
Evan01
0人赞赏了该文章 4次浏览 未经作者许可,禁止转载编辑于2024年09月14日 08:11:58

 clr.AddReference('System')  
clr.AddReference('System.Web')  # 这行可能不是必需的,取决于你的具体需求  
clr.AddReference('Kingdee.BOS')  
from Kingdee.BOS.Util import *  
  
def DataChanged(e):  

    # 处理物料属性FErpClsID和物料编码FNUMBER字段
    if StringUtils.EqualsIgnoreCase(e.Field.Key, "FErpClsID"or StringUtils.EqualsIgnoreCase(e.Field.Key, "FNUMBER"):  
        FNUMBER = this.View.Model.GetValue("FNUMBER")  
        FErpClsID = this.View.Model.GetValue("FErpClsID")  
  
        # 判断物料编码FNUMBER  包含8.不包含8.9999且物料属性FErpClsID 值为1 就赋值仓管员F_RQWJ_CGY 仓库FStockId 仓位FStockPlaceId,如不满足则清空。
        if FNUMBER and '8' in FNUMBER and not (FNUMBER.startswith('8.9999'or (FNUMBER.startswith('8.'and len(FNUMBER) <= len('8.9999'))) and FErpClsID == '1':  
            F_RQWJ_CGY = '00979'  
            FStockId = '01.84' 
            FStockPlaceId = 102131
            this.View.Model.SetItemValueByNumber("F_RQWJ_CGY", F_RQWJ_CGY, 0)  
            this.View.Model.SetItemValueByNumber("FStockId", FStockId, 0)  
            this.Model.SetItemValueByID("FStockPlaceId",FStockPlaceId,0);#####仓位赋值
            this.View.UpdateView("FStockPlaceId",0);
        if FNUMBER and '8' in FNUMBER and not (FNUMBER.startswith('8.9999'or (FNUMBER.startswith('8.'and len(FNUMBER) <= len('8.9999'))) and FErpClsID != '1':  
            F_RQWJ_CGY = ''  
            FStockId = '' 
            FStockPlaceId = 0
            this.View.Model.SetItemValueByNumber("F_RQWJ_CGY", F_RQWJ_CGY, 0)  
            this.View.Model.SetItemValueByNumber("FStockId", FStockId, 0)  
            this.Model.SetItemValueByID("FStockPlaceId",FStockPlaceId,0);#####仓位赋值
            this.View.UpdateView("FStockPlaceId",0);


作者:sjzqc

来源:金蝶云社区

原文链接:https://vip.kingdee.com/article/621744608002478848?productLineId=1&lang=zh-CN

著作权归作者所有。未经允许禁止转载,如需转载请联系作者获得授权。


赞 0