3. MRP逻辑引擎:净需求计算、毛需求展开、提前期偏置、低层码逻辑与计划订单生成

MRP逻辑引擎是物料需求计划的核心计算单元,它接收主生产计划(MPS)与独立需求,结合物料清单(BOM)、库存状态与提前期参数,逐层展开并生成采购与生产建议。本章聚焦引擎内部的四个关键环节:净需求计算、毛需求展开、提前期偏置与低层码逻辑,最终输出可执行的计划订单。

3.1 净需求计算:从毛需求到净需求的转换

净需求计算是MRP引擎的第一道核心运算。它回答一个基本问题:“在满足现有库存与在途供给后,还需要多少?”

标准计算公式如下:

净需求 = 毛需求 - 预计可用库存 - 在途订单 + 安全库存

其中:

  • 毛需求:来自MPS、独立需求或上层BOM展开的父项需求。
  • 预计可用库存:当前库存量减去已分配量(预留、质检锁定等)。
  • 在途订单:已下达但尚未入库的采购单或生产单。
  • 安全库存:为应对波动而设置的缓冲库存,通常作为净需求的“触发门槛”。
调优要点:安全库存的放置位置(成品层 vs. 半成品层)直接影响净需求计算的触发频率。建议将安全库存设置在需求波动大、提前期长的物料层,避免在每一层重复叠加。

3.2 毛需求展开:BOM遍历与需求汇总

毛需求展开是MRP引擎的“广度优先”遍历过程。系统从顶层成品开始,沿BOM结构逐层向下,将父项的计划订单量乘以子项用量因子,生成子项的毛需求。

展开过程遵循以下规则:

  • 按BOM层级逐层展开:从0层(成品)开始,每完成一层计算,再进入下一层。
  • 用量因子计算:子项毛需求 = 父项计划订单量 × 子项单位用量(含损耗率)。
  • 需求时界与计划时界:在时界内,毛需求不可变更;时界外可调整。
BOM层级 物料编码 父项计划量 单位用量 毛需求
0 FG-100 100 1 100
1 SUB-200 100 2 200
2 RAW-300 200 3 600
性能优化提示:对于多层级BOM,建议启用“批量展开”模式,将同一物料在不同父项下的毛需求先汇总再计算净需求,减少数据库I/O次数。

3.3 提前期偏置:时间维度的需求对齐

提前期偏置(Lead Time Offset)将需求从“数量维度”映射到“时间维度”。它确保子项的需求日期与父项的开工日期对齐,避免过早或过晚采购/生产。

偏置计算规则:

  • 子项需求日期 = 父项计划开工日期 - 子项提前期(含检验、运输等缓冲)。
  • 父项计划完工日期 = 父项计划开工日期 + 父项制造提前期。
  • 偏置天数 = 父项制造提前期 + 子项提前期(若子项为采购件,则使用采购提前期)。
常见误区:提前期偏置不考虑工作日历。若工厂采用“五天工作制”,系统默认的日历偏置可能导致需求落在非工作日。建议在MRP参数中启用“工作日历偏置”选项,自动将需求日期调整至最近的工作日。

3.4 低层码逻辑:避免重复计算与需求放大

低层码(Low Level Code, LLC)是MRP引擎防止重复计算的关键机制。每个物料在BOM中可能出现在多个层级,低层码定义为该物料在所有BOM路径中的最低层级。

计算规则:

  • 系统按低层码从小到大的顺序处理物料(0层 → 1层 → 2层 → …)。
  • 同一物料的所有毛需求,只在其低层码对应的层级统一汇总并计算净需求。
  • 避免在较高层级提前计算,导致需求被重复放大。
调优案例:某电子企业物料“电容C-100”同时出现在BOM的1层和3层。未启用低层码时,系统在1层和3层分别计算净需求,导致采购量翻倍。启用低层码(LLC=3)后,所有需求在3层统一汇总,采购量回归正常。
低层码逻辑与需求汇总流程 成品 FG-100 (LLC=0) 子装配 SUB-200 (LLC=1) 子装配 SUB-300 (LLC=1) 通用物料 C-100 (LLC=2) 专用物料 D-200 (LLC=2) 原材料 RAW-400 (LLC=3) 说明:物料 C-100 在 LLC=2 层统一汇总所有父项需求,避免在 LLC=1 层重复计算

3.5 计划订单生成:从净需求到可执行指令

经过净需求计算、提前期偏置与低层码逻辑处理后,MRP引擎生成两类计划订单:

  • 计划生产订单:针对自制件,包含物料编码、数量、开工日期、完工日期。
  • 计划采购订单:针对采购件,包含物料编码、数量、需求日期、建议供应商。

计划订单的生成规则:

  • 批量规则:净需求按批量规则(固定批量、经济批量、按需批量等)调整后生成订单数量。
  • 订单状态:初始状态为“计划”,经确认后转为“已下达”。
  • 订单排程:基于提前期偏置结果,自动计算订单的开工与完工日期。
调优参数:批量规则中的“固定批量”适用于高价值、长提前期物料;“按需批量”适用于低价值、短提前期物料。建议对A类物料使用固定批量,C类物料使用按需批量,以平衡库存持有成本与订单频次。
MRP逻辑引擎完整计算流程 MPS / 独立需求 BOM / 物料清单 库存 / 在途数据 步骤1:毛需求展开(BOM遍历) 步骤2:低层码分配与需求汇总 步骤3:净需求计算(含安全库存) 步骤4:提前期偏置(时间对齐) 输出:计划生产/采购订单

3.6 参数调优对照表

参数名称 影响环节 调优建议 性能/效果影响
安全库存策略 净需求计算 A类物料使用动态安全库存,C类使用固定值 降低库存持有成本 10-20%
批量规则 计划订单生成 高价值物料用按需批量,低价值用固定批量 减少订单频次,提升MRP运行速度
低层码启用 需求汇总 必须启用,避免重复计算 消除需求放大,减少采购量误差
工作日历偏置 提前期偏置 启用,并配置工厂日历 避免需求落在非工作日
BOM展开深度 毛需求展开 限制展开层级(如最多10层) 防止无限递归,提升计算稳定性
实施建议:在首次上线MRP时,建议先以“按需批量+启用低层码+启用工作日历”作为基线配置,运行2-3个周期后再根据实际订单交付与库存周转数据,逐步调整安全库存与批量规则。