(二开)物料清单中根据工艺路线携带序列和工序二开方案

栏目:云星空知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

(二开)物料清单中根据工艺路线携带序列和工序二开方案

1.     增加工艺路线F8字段

在“子项明细”中增加基础资料字段,关联的基础资料类型为“工艺路线F8”,该基础资料将工艺路线子分录“工序列表”打平了显示,可以定位到具体的序列和工序。

(1)如果需要按照父项物料进行过滤,则直接将“过滤”属性配置成'GetValue(FMATERIALID)'=FMaterialId。

工艺路线F8.webp

(2)如果需要按照物料组过滤,且工艺路线是上级分组,而物料是下级分组,就需要使用Python插件。

先将“物料分组”加入到父物料的“引用属性”中:

物料分组引用属性.webp

然后配置表单插件,注册Python脚本

物料表单插件Python.webp

Python参考实现:

clr.AddReference("Kingdee.BOS.ServiceHelper")

from Kingdee.BOS.ServiceHelper import *

def BeforeF7Select(e):

if ("FRouteF8".Equals(e.FieldKey)):

           material = this.View.Model.DataObject["MATERIALID"]

           sql=" 1=0 "

           if (material != None):

                      group = material["MaterialGroup"]

                      if (group != None):

                                   groupId = group["Id"]

                                   selectsql="SELECT FFULLPARENTID FROM T_BD_MATERIALGROUP WHERE FID="+groupId.ToString()

                                   fullParentId = DBServiceHelper.ExecuteScalar(this.Context, selectsql, "")

                                   if(fullParentId==None or "".Equals(fullParentId.Trim())):

                                                   sql=" 1=0 "

                                   else:

                                                   splitIds=fullParentId.Split('.')

                                                   groupIds=groupId.ToString();

                                                   for splitId in splitIds:

                                                               if(splitId==None or "".Equals(splitId.Trim())):

                                                                          continue

                                                               else:

                                                                          groupIds=groupIds+","+splitId.ToString()

                                                    sql=" FMaterialGroupId IN ("+groupIds+") "

         e.ListFilterParameter.Filter = sql


2.     配置实体服务规则,根据工艺路线F8携带序列和工序号

在“子项明细”中增加实体服务规则:

物料清单实体服务规则.webp

规则条件如下:

物料清单实体服务规则前置条件.webp

规则条件成立时,执行如下两个服务:

物料清单实体服务规则服务1.webp

物料清单实体服务规则服务2.webp



膜拜大佬! 

(二开)物料清单中根据工艺路线携带序列和工序二开方案

1. 增加工艺路线F8字段在“子项明细”中增加基础资料字段,关联的基础资料类型为“工艺路线F8”,该基础资料将工艺路线子分录“工序列...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息