2. 产品BOM结构解析
产品BOM(Bill of Materials,物料清单)是LCI清单数据匹配的“源头坐标系”。如果BOM结构没有读清楚,后续的物料编码对齐、属性映射和清单挂接就会变成盲目比对。本节要解决的核心问题是:一张BOM里究竟有哪些层级、哪些字段、哪些标识,能够被用来与LCI清单建立可靠的对应关系。我们既讲结构本身,也讲如何从结构中“提取匹配线索”。
一、BOM的层级结构:从成品到基础物料
制造企业的BOM通常呈树状结构。最顶层是成品或销售件(Level 0),其下是部件/组件(Level 1),再往下是子部件(Level 2),直到原材料、标准件、辅料等采购或自制的末端物料。层级深度因产品复杂度而异,简单产品可能只有两三层,复杂装备可达七八层甚至更多。
理解层级结构对匹配工作有两个直接意义。第一,匹配粒度要明确:LCI清单可能按成品、按部件或按材料分别建立,BOM层级决定了我们是在哪一层做“一对多”或“多对一”的挂接。第二,层级路径本身就是标识:同一物料在不同父件下出现时,其“父件编码+子件编码+位号”的组合往往比单独的子件编码更具唯一性。例如某型号电机在A部件和B部件中都被使用,仅凭电机编码无法区分装配位置,但加上父件路径后就能精确定位。
实际BOM中还存在“虚拟件”和“替代件”两类特殊节点。虚拟件(Phantom)不单独入库,仅用于组织结构,匹配时通常应穿透到其下层真实物料;替代件则需记录主料与替代料的关系,避免LCI清单只挂主料而遗漏替代情形下的材料差异。
二、物料编码规则:匹配的第一标识
物料编码是BOM中最核心的匹配键。常见编码规则包括:纯流水码(如“10002345”)、分类码+流水码(如“EL-MO-0012”表示电子类电机第12号)、以及含属性段的智能码(如“MOT-380V-4P-001”)。不同企业规则不同,但匹配时我们关注的是编码的稳定性、唯一性和可解析性。
稳定性指编码不随描述修改而变;唯一性指一物一码、不重复;可解析性指编码段能反映类别、规格或材质。对于含属性段的编码,可以直接从编码中提取匹配线索;对于纯流水码,则必须依赖属性字段补充信息。需要特别注意的是,同一物料在ERP、PLM、MES系统中可能存在多套编码,匹配前应先建立“编码对照表”,明确以哪套编码为主键。
三、属性字段:编码之外的匹配依据
BOM的属性字段通常包括:物料名称、规格型号、材质、单位、重量、图号、供应商、版本、生效日期等。其中与LCI匹配最相关的是材质、重量/用量、单位、规格型号四项。材质决定材料类别,重量或用量决定清单中的数量换算,单位决定计量口径是否一致,规格型号则常用于区分同编码下的不同变体。
一个常见陷阱是“名称相同但材质不同”。例如“支架”可能分别是钢制、铝制或塑料件,若仅按名称匹配,就会把不同材料的LCI数据错误挂接。因此属性字段的比对应遵循“编码优先、材质校验、单位复核”的顺序,而不是只看名称。
四、常见数据格式与关键标识提取
BOM在实际流转中会以多种格式出现:ERP导出的Excel/CSV平表、PLM系统的结构化XML、以及接口传输的JSON。平表通常以“父件编码、子件编码、层级、用量、单位”为列;结构化格式则保留树形嵌套。无论哪种格式,匹配前都应先做一次“字段归一化”,统一编码格式(去空格、统一大小写)、统一单位(如克与千克)、统一层级编号。
下面这张图概括了从BOM结构到匹配标识提取的关系:左侧是层级与字段,右侧是可用于匹配的关键标识,中间通过提取规则连接。
五、从BOM到匹配的实操要点
假设我们拿到一张电动三轮车的BOM平表,字段为“父件编码、子件编码、层级、名称、材质、单位用量、单位”。第一步做字段归一化:把“12.5kg”和“12500g”统一为千克,把编码中的空格和全角字符清理掉。第二步按层级展开,识别虚拟件并穿透。第三步为每个末端物料建立匹配标识组合:以子件编码为主键,材质和规格型号为校验,单位用量为换算依据,父件路径为定位补充。
第四步是比对LCI清单。若清单以材料类别组织(如“钢材”“铝材”“塑料”),则BOM侧需要按材质字段聚合用量;若清单以具体物料组织,则按编码逐条挂接。比对结果应记录三类状态:已匹配、待确认、未匹配。待确认通常出现在编码不同但属性高度相似的情形,需要人工复核;未匹配则要回查BOM是否遗漏或清单是否缺少对应条目。
最后需要强调,BOM结构解析不是一次性工作。产品改版、供应商变更、编码升版都会影响匹配关系,因此应保留BOM版本号和生效日期字段,并在匹配记录中标注所依据的BOM版本,确保LCI清单与产品结构之间的对应关系可追溯、可复核。