2. 多层级BOM结构:单层BOM与多层BOM的区别、父件与子件的关系、BOM层级编码规则
在制造企业中,物料清单(BOM)的结构深度直接决定了生产计划、物料需求计算和成本核算的精度。本章将深入剖析单层BOM与多层BOM的核心差异、父件与子件的依赖关系,以及支撑多层级管理的编码规则。
2.1 单层BOM vs 多层BOM:核心差异
单层BOM仅描述父件与其直接子件的关系,不展开子件自身的下级结构;多层BOM则递归展开至最底层原材料,形成完整的装配树。两者的适用场景与数据特征对比如下:
| 对比维度 | 单层BOM | 多层BOM |
|---|---|---|
| 结构深度 | 仅1级(父→子) | ≥2级,可递归至原材料 |
| 数据冗余 | 低,每张BOM独立 | 高,子件BOM可被多个父件共享 |
| 变更影响 | 局部,仅影响当前BOM | 全局,子件变更向上传播至所有父件 |
| MRP展开 | 需人工逐级调用 | 系统自动递归展开 |
| 典型用途 | 简单组装、维修备件 | 复杂产品、整车/整机 |
实践建议: 对于产品结构超过3级的企业,强烈推荐采用多层BOM。单层BOM在级联变更时极易出现漏改、错改,导致物料短缺或呆滞。
2.2 父件与子件的关系定义
在BOM结构中,父件与子件的关系由三个核心属性定义:
- 用量(Quantity per Assembly, QPA): 每个父件所需子件的数量。例如1台发动机需要4个活塞,则QPA=4。
- 生效/失效日期(Effectivity Dates): 子件在父件上的有效时间段,支持工程变更切换。
- 位置码(Find Number / Position): 子件在父件上的装配位置标识,用于指导生产和追溯。
父件与子件的关系具有以下关键特征:
- 一对多: 一个父件可包含多个子件;一个子件也可被多个父件引用(多父件共享)。
- 层级传递: 子件本身也可以是下一层级的父件,形成递归结构。
- 数量可分数: 支持小数用量(如0.5升润滑油),但需在系统中明确单位。
常见误区: 不要将“父件”等同于“成品”,“子件”等同于“原材料”。在多层BOM中,中间件既是上层父件的子件,又是下层子件的父件。这种双重身份是BOM递归展开的核心。
2.3 BOM层级编码规则
为了在系统中唯一标识每个物料及其层级位置,必须建立统一的编码规则。常见的编码方案包括:
| 编码方案 | 示例 | 优点 | 缺点 |
|---|---|---|---|
| 顺序流水码 | 1000001, 1000002 | 简单、无含义、易扩展 | 无法从编码识别层级 |
| 层级嵌套码 | A-01-001, A-01-002 | 编码自带层级信息 | 层级深度受限,变更成本高 |
| 物料分类+流水码 | RAW-001, SUB-001 | 可区分物料类型 | 需维护分类表 |
| 无含义纯数字码 | 1234567890 | 适合系统自动生成 | 人工识别困难 |
推荐采用无含义纯数字码 + 独立BOM层级表的方案:物料编码本身不携带层级信息,层级关系由BOM结构表(Parent-Child关系表)单独维护。这种设计具有以下优势:
- 物料编码一旦分配,永不因层级调整而变更。
- 支持任意深度的BOM展开,不受编码位数限制。
- 便于ERP/MES系统进行递归查询和MRP运算。
2.4 多层级BOM结构示意图
下图展示了一个典型的多层级BOM结构,从成品到底层原材料共4级,清晰呈现父件与子件的递归关系:
2.5 层级编码在系统中的实现
在ERP/MES系统中,BOM层级关系通常通过物料主数据和BOM结构表两张核心表来维护。以下是一个简化的BOM结构表数据示例:
-- BOM结构表(BOM_STRUCTURE)示例数据
BOM_ID PARENT_ITEM CHILD_ITEM QPA LEVEL EFFECTIVE_FROM EFFECTIVE_TO
------ ----------- ---------- --- ----- -------------- ------------
BOM001 ELEC-TOOL-01 MOTOR-ASSY-01 1 1 2024-01-01 2024-12-31
BOM001 ELEC-TOOL-01 HOUSING-ASSY 1 1 2024-01-01 2024-12-31
BOM001 ELEC-TOOL-01 CTRL-MOD-01 1 1 2024-01-01 2024-12-31
BOM002 MOTOR-ASSY-01 STATOR-01 1 2 2024-01-01 2024-12-31
BOM002 MOTOR-ASSY-01 ROTOR-01 1 2 2024-01-01 2024-12-31
BOM003 STATOR-01 COPPER-WIRE 0.5 3 2024-01-01 2024-12-31
BOM003 STATOR-01 SILICON-STEEL 0.8 3 2024-01-01 2024-12-31
通过上述结构,系统可以递归展开任意层级的BOM,并自动汇总每个父件所需的所有底层物料数量。这种设计既保持了物料编码的简洁性,又实现了BOM结构的灵活维护。
关键总结: 单层BOM适合简单场景,多层BOM是复杂产品管理的基石。父件与子件的关系通过用量、生效日期和位置码精确定义。推荐采用无含义物料编码 + 独立BOM结构表的方案,兼顾编码稳定性和结构灵活性。