二开案例.表达式.实体服务规则中的辅助资料

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

二开案例.表达式.实体服务规则中的辅助资料

【应用场景】在实体服务规则中使用辅助资料字段。

【案例演示】采购订单,新增界面,通过使用实体服务规则进行控制,当供应商的供应商等级为一级时,控制采购员字段必录。

【实现步骤】

<1>先制造演示环境,登录BOSIDE,扩展采购订单,新增一个辅助资料字段,如下图所示。


<2>供应商字段新增值更新事件,实现自动携带供应商等级的功能,如下图所示。

供应商字段添加引用属性【供应商等级】


<3>在采购订单的单据头上,新增实体服务规则,设置控制逻辑为:当供应商等级为一级时,采购员必录,如下图所示。


<4>保存元数据,开发完毕。现在可以登录业务站点,打开采购订单,检查一下该实体服务规则的控制效果啦。





【知识点】

<1>如何查找类型为供应商等级,值为一级的辅助资料的内码?

-- 查询辅助资料类型

SELECT a.FID AS 辅助资料类型内码,b.FNAME AS 辅助资料类型名称,a.* FROM T_BAS_ASSISTANTDATA a LEFT JOIN T_BAS_ASSISTANTDATA_L b ON a.FID=b.FID AND b.FLOCALEID=2052 WHERE b.FNAME='供应商等级'

 -- 查询辅助资料

SELECT a.FENTRYID AS 辅助资料内码,a.FNUMBER AS 辅助资料编码,b.FDATAVALUE AS 辅助资料名称,a.* FROM T_BAS_ASSISTANTDATAENTRY a LEFT JOIN T_BAS_ASSISTANTDATAENTRY_L b ON a.FENTRYID=b.FENTRYID AND b.FLOCALEID=2052 WHERE a.FID='96f1e44f76574005b7498138da3320b2' AND b.FDATAVALUE='一级'


<2>更多表达式写法演示

基于供应商等级.内码控制:

写法一:

F_Jac_Assistant <> null  AND F_Jac_Assistant.Id = '5f6172d239b2e3'

写法二:

F_Jac_Assistant <> null  AND F_Jac_Assistant.ActiveObject["Id"] = '5f6172d239b2e3'


基于供应商等级.编码控制:

写法一:

F_Jac_Assistant <> null  AND F_Jac_Assistant.FNumber = '001'

写法二:

F_Jac_Assistant <> null  AND F_Jac_Assistant.ActiveObject["FNumber"] = '001'


基于供应商等级.名称控制:

写法一:

F_Jac_Assistant <> null  AND F_Jac_Assistant.FDataValue = '一级'

写法二:

F_Jac_Assistant <> null  AND F_Jac_Assistant.ActiveObject["FDataValue"].ToString() = '一级'

写法三:

F_Jac_Assistant <> null  AND str(F_Jac_Assistant.ActiveObject["FDataValue"]) = '一级'




基于供应商.供应商等级.内码控制:

写法一:

FSupplierId  <> null AND FSupplierId.FSupplierGrade <> null AND FSupplierId.FSupplierGrade.Id = '5f6172d239b2e3'

写法二:

FSupplierId  <> null AND FSupplierId.FSupplierGrade <> null AND FSupplierId.FSupplierGrade["Id"] = '5f6172d239b2e3'


基于供应商.供应商等级.编码控制:

写法一:

FSupplierId  <> null AND FSupplierId.FSupplierGrade <> null AND FSupplierId.FSupplierGrade.Number = '001'

写法二:

FSupplierId  <> null AND FSupplierId.FSupplierGrade <> null AND FSupplierId.FSupplierGrade["Number"] = '001'


基于供应商.供应商等级.名称控制:

写法一:

FSupplierId  <> null AND FSupplierId.FSupplierGrade <> null AND FSupplierId.FSupplierGrade.Name.ToString() = '一级'

写法二:

FSupplierId  <> null AND FSupplierId.FSupplierGrade <> null AND str(FSupplierId.FSupplierGrade.Name) = '一级'

写法三:

FSupplierId  <> null AND FSupplierId.FSupplierGrade <> null AND FSupplierId.FSupplierGrade["Name"].ToString() = '一级'

写法四:

FSupplierId  <> null AND FSupplierId.FSupplierGrade <> null AND str(FSupplierId.FSupplierGrade["Name"]) = '一级'

----------------------------------------------------------------------------------------------------













【金蝶云星空BOS二次开发案例演示】https://vip.kingdee.com/article/94751030918525696

二开案例.表达式.实体服务规则中的辅助资料

【应用场景】在实体服务规则中使用辅助资料字段。【案例演示】采购订单,新增界面,通过使用实体服务规则进行控制,当供应商的供应商等级为...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息