二开案例.表达式.获取基础资料的分组数据
【应用场景】在前置条件或者计算公式中获取基础资料的分组数据。
【案例演示】销售出库单,设置物料后,当物料的分组编码为001时,将该物料的仓库携带到当前明细行的仓库字段。
【实现方案1】
<1>BOSIDE扩展销售出库单,选中物料编码字段,添加引用属性,设置值更新事件,如下图所示,保存元数据,开发完毕。
前置条件:FMaterialId <> null AND FMaterialId.FMaterialGroup <> null AND FMaterialId.FMaterialGroup['Number']='001'
计算公式:FStockID = FMaterialID.FStockId
【实现方案2】
<1>BOSIDE扩展销售出库单,选中物料编码字段,添加引用属性,设置值更新事件,如下图所示,保存元数据,开发完毕。
前置条件和方案1相同:
现在可以登录业务站点,打开销售出库单编辑界面,录入满足前置条件的物料,验证一下我们设置的表达式的控制效果啦。
【知识点】
<1>表达式超过2层以后的取值,需要深入了解对应数据包的结构,按其属性名称来取值,数据包结构可通过注册表单插件,打断点调试的方式观察和学习。
例如取物料的分组的编码(单引号或者双引号都可以):
FMaterialId.FMaterialGroup['Number']
取物料的分组的名称:
FMaterialId.FMaterialGroup['Name'].ToString()
取物料的分组的内码:
FMaterialId.FMaterialGroup['Id'].ToString()
或者
FMaterialId.FMaterialGroup.Id.ToString()
---------------------------------------------------------------------------------------------------------
<2>如果物料未绑定仓库时,不想执行计算公式,前置条件可改为:
FMaterialId <> null AND FMaterialId.FMaterialGroup <> null AND FMaterialId.FMaterialGroup['Number']='001' AND FMaterialId.FStockId <> null
此表达式的意思是:物料不为空,且物料的分组编码等于【001】,且物料的仓库不为空。
【金蝶云星空BOS二次开发案例演示】https://vip.kingdee.com/article/94751030918525696
二开案例.表达式.获取基础资料的分组数据
本文2024-09-23 04:18:31发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-164477.html