概述
BOM是ERP的核心,ES能否成为ERP级系统取决于这个核心是否能顺利展开并实现MRP运算。
本文以常见的物料BOM做为示例,演示ES下的无级BOM实现技术。
BOM和计算
- BOM反映的是项目中
父件
与所有子件
的配比关系。
- BOM计算就是把成品分解成组装所需用到的原材料及中间产品及其数量。
ES实现过程
-
MRP运算通过数据库来实现更高效,例如存储过程,自定义函数,视图等。在ES中,我们可以使用
BOM视图
来完成这一目的。 -
首先,定义BOM模板,存放bom数据(三个关键字段分别是父件,子件,数量)
- 其次,在数据库中定义自定义函数实现无级BOM完整分解。
- 接下来,定义BOM视图并使用上面定义的函数。
MRP运算
- 定义模板,提取订单数据(示例库未设订单模板,需手填模拟),使用表间公式匹配BOM视图对订单中的产品进行分解运算。
- 汇总数据(可用于生成采购计划)。
- 核心分解表间公式:
应用拓展
- 无级BOM的特点是只记录两层之间的父子关系,存储空间需求较小(示例库中35条完整BOM记录实际只需要存19条父子数据就可生成),但维护稍复杂。
小结
我们在其他一些ES案例中经常见到采用路径法
的BOM,采用路径法需要记录每种产品每阶物料的路径信息,三阶
以后的物料路径一般存在很多重复,使用无级BOM技术可以有效避免这些冗余重复数据。
在ES中实现BOM分解和MRP运算并不难,示例库(群共享)演示了一种简易方案,在大型应用中更多的是采用存储过程提交和分解数据,在ES中也实现,但涉及到VBA,在此不再赘述。
村长点评:在nxcells中可以直接在提数中递归BOM,并传入本表待分解的品号,是比存储过程更优的方案。