输入物料编码自动获取缺省值辅助属性二开示例原创
金蝶云社区-Zenos
Zenos
53人赞赏了该文章 574次浏览 未经作者许可,禁止转载编辑于2023年03月15日 13:47:56

示例代码如下

1:先用SQL查出来辅助属性的ID

select tFF100007.FID FF100007 

,tFF100008.FID FF100008

,tFF100009.FID FF100009--显示辅助属性ID

from T_BD_FLEXSITEMDETAILV aux

left join T_BAS_AssistantDataEntry tFF100007

on aux.FF100007 = tFF100007.FENTRYID

left join T_BAS_AssistantDataEntry tFF100008

on aux.FF100008 = tFF100008.FENTRYID

left join T_BAS_AssistantDataEntry tFF100009

on aux.FF100009 = tFF100009.FENTRYID

where tFF100007.FNumber='0'and tFF100008.FNumber='0'and tFF100009.FNumber='0'--过滤你要显示的辅助属性值

2:Py插件

from System import * 

    def DataChanged(e):#值更新事件

        if e.Key == "FMaterialId":#物料编码

             ropId = this.Model.GetValue("FMaterialId",e.Row)["MaterialAuxPty"]#辅助属性

             for i in ropId:

                 a = i["IsEnable1"]

                 b = i["AuxPropertyId_Id"]

                 if a ==True and b==100007 :辅助属性启用且编码等于100007的Id 

                      this.Model.SetValue("$$FAUXPROPID__FF100007","634799d15941b5",e.Row)#第一个字段为辅助属性的值标识,第二个字段为SQL查询出来的“0”内码,第三个字段为行号。

                 if a ==True and b==100008 :

                      this.Model.SetValue("$$FAUXPROPID__FF100008","634799e35941b7",e.Row)

                 if a ==True and b==100009 :

                      this.Model.SetValue("$$FAUXPROPID__FF100009","634799ee5941b9",e.Row)

                 if a ==True and b==100010 :

3:辅助属性的标识可以用http数据监控查询

image.png

赞 53