2. 食品配方与BOM多版本管理配置

配方主数据与多版本 BOM 的配置对象

食品配方调整频繁,但已下达的生产订单不能“跟着配方一起变”。MES 中要把“配方内容”和“版本生效规则”分开建模:配方主数据描述产品由哪些物料、多少用量、什么替代关系组成;BOM 版本则携带生效日期区间与状态,决定某张生产订单在创建或下达时取用哪一版。

本例以一款“草莓果酱(成品编码 FG-JAM-001,规格 200g/瓶)”为例,配置两个 BOM 版本:V1 使用白砂糖,V2 因减糖改版使用赤藓糖醇并新增替代料组。核心对象与字段如下:

对象关键字段示例值作用
配方主数据配方编码 / 成品编码 / 基准批量RCP-JAM-001 / FG-JAM-001 / 1000 kg定义用量基准,BOM 行按比例换算
BOM 版本头版本号 / 生效日期 / 失效日期 / 状态V1:2024-01-01 ~ 2024-05-31,冻结;V2:2024-06-01 起,生效控制版本取用区间
BOM 行物料 / 用量 / 损耗率 / 替代组RM-SUGAR-01 / 380 kg / 2% / —组成明细
替代料组组号 / 主料 / 替代料 / 优先级 / 换算系数SUB-SWEET-01:白砂糖 ↔ 赤藓糖醇,系数 0.85缺料时按规则替换

多版本 BOM 的生效区间与取用逻辑

版本控制的关键是“同一成品在同一时刻只能有一个生效版本”,且区间不得重叠。配置时先建 V1 并设为冻结(仅供历史订单追溯),再建 V2 并设为生效。生产订单在创建时按订单计划开工日期匹配版本区间,并把版本号写入订单快照;此后即使 V2 被修改,已下达订单仍按快照版本展开物料需求,避免“改配方导致在制订单缺料”。

版本生效时间轴(按订单计划开工日期取版本) 2024-01-01 2024-06-01 2024-12-31 BOM V1(冻结) 白砂糖 380 kg · 损耗 2% BOM V2(生效) 赤藓糖醇 323 kg · 替代组 SUB-SWEET-01 订单 MO-2403-018 计划开工 2024-03-15 取版本:V1 订单 MO-2407-042 计划开工 2024-07-08 取版本:V2 订单 MO-2405-031 计划开工 2024-05-20 取版本:V1(边界内) 替代料组 SUB-SWEET-01(仅 V2 引用) 主料:赤藓糖醇 替代:白砂糖 优先级 1 · 换算系数 0.85 缺料时按系数折算用量

配置步骤与关键参数

  1. 建配方主数据:配方编码 RCP-JAM-001,绑定成品 FG-JAM-001,基准批量 1000 kg。BOM 行用量均以该基准录入,订单批量不同时由系统按比例换算。
  2. 建 V1 版本头:生效 2024-01-01,失效 2024-05-31,状态设为“冻结”。冻结版本不可再新增行,但可被历史订单引用。
  3. 建 V2 版本头:生效 2024-06-01,失效留空表示长期有效,状态“生效”。系统校验与 V1 区间无重叠后才允许保存。
  4. 配置替代料组:组号 SUB-SWEET-01,主料赤藓糖醇、替代料白砂糖,优先级 1,换算系数 0.85(即 1 kg 赤藓糖醇按 0.85 kg 白砂糖折算,示例假设值,需按实际甜度当量核定)。替代组只挂在 V2 的糖类行上。
  5. 设置取版规则:订单创建时按“计划开工日期”匹配版本区间;匹配不到任何版本时禁止下达并报错。
替代料组的换算系数必须由研发按甜度当量或配方试验核定,MES 只负责按系数折算,不负责判断口味是否等效。系数录错会直接导致投料偏差。

版本切换对生产订单的影响验证

配置完成后,用三张订单验证取版与快照行为。验证重点是:订单是否取到正确版本、已下达订单是否被新版本“污染”、替代料组是否只在 V2 生效。

验证项操作预期结果判定
V1 区间取版创建 MO-2403-018,计划开工 2024-03-15订单绑定 V1,物料需求含白砂糖 380 kg×批量系数通过
边界日期创建 MO-2405-031,计划开工 2024-05-20仍取 V1(失效日含当日)通过
V2 区间取版创建 MO-2407-042,计划开工 2024-07-08订单绑定 V2,糖类行显示替代组 SUB-SWEET-01通过
快照隔离MO-2403-018 下达后,修改 V2 用量MO-2403-018 物料需求不变,仍为 V1 数据通过
替代料触发对 MO-2407-042 将赤藓糖醇可用量置 0系统按系数 0.85 折算白砂糖需求 323×0.85≈274.6 kg通过
无版本保护创建计划开工 2023-12-01 的订单提示“无匹配 BOM 版本”,禁止下达通过

若“快照隔离”一项失败,说明系统在展开物料需求时实时读取了最新版本,而非订单快照,这会导致在制订单缺料或错料,属于必须修复的配置缺陷。替代料折算结果 274.6 kg 为按给定系数直接推算的示例值,实际投料还需叠加损耗率。

可直接使用的配置检查清单

  • 同一成品的所有 BOM 版本区间两两不重叠,且同一时刻仅一个“生效”状态。
  • 冻结版本保留完整行明细,供历史订单追溯,不允许物理删除。
  • 替代料组必须声明主料、替代料、优先级与换算系数,且只挂在需要替代的 BOM 行上。
  • 订单取版字段明确为“计划开工日期”,并在订单上冗余存储版本号作为快照。
  • 无匹配版本时系统必须阻断下达,而不是默认取最新版。