案例背景:BOM在生产领域是指物料清单,就是一件产品会有多个部件组成,想要实现我想生产这几个产品,可以自动计算出需要多少部件,就可以参看此案例。
实现思路:在基础表中录入每个产品需要的组成部件,然后在清单表中,根据产品名称获取对应的组成部件一一拆分整合起来。
应用安装链接:https://jiandaoyun.com/a/5ff5866e2f44f700063f7c49
分享链接:https://t6ixa9nyl6.jiandaoyun.com/sharedoc/1s8Cp2SndUUJXWkoGHTaBD
一、基础表设置
子物料数(数字字段):COUNT(BOM明细.子物料)
子物料集合(单行文本):TEXT(BOM明细.子物料)
用量集合(单行文本):TEXT(BOM明细.用量)
二、基础数据录入
三、BOM表设置
产品明细公式
一级材料集合(单行文本):数据联动,关联BOM基础表,当主产品等于本表的产品名称获取对应的子物料集合
一级材料用量集合(单行文本):数据联动,关联BOM基础表,当主产品等于本表的产品名称获取对应的用量集合
物料数(数字字段):数据联动,关联BOM基础表,当主产品等于本表的产品名称获取对应的用料数
数量重复(单行文本):LEFT(REPT(CONCATENATE(TEXT(产品明细.数量),','),产品明细.物料数),LEN(REPT(CONCATENATE(TEXT(产品明细.数量),','),产品明细.物料数))-1)
主表字段公式
产品数量重复(单行文本):TEXT(产品明细.数量重复)
一级材料总集合(单行文本):TEXT(产品明细.一级材料集合)
一级用料总行数(数字):COUNT(SPLIT(一级材料总集合,','))
一级材料用量集合(单行文本):TEXT(产品明细.一级材料数量集合)
一级用料公式
序号(数字字段):根据主表的一级用料总行数字段的值联动子表单行数基础表,参考案例:动态显示子表单行数案例
材料名称(单行文本):SPLIT(一级材料总集合,',')[VALUE(一级用料.序号)-1]
材料用量(数字字段)【最终需要的结果】:一级用料.单个产品需要材料用料*一级用料.产品数量
单个产品需要材料用料(数字字段):SPLIT(一级材料用量集合,',')[VALUE(一级用料.序号)-1]
产品数量(数字字段):SPLIT(产品数量重复,',')[VALUE(一级用料.序号)-1]