为了系统深入理解MRP的逻辑,清晰解析BOM结构下需求的层层传递与MRP计划要素的生成,必需构建一个完整的实例加强理解。我们将以一个具体的组装产品为例,模拟其从销售订单到最终采购申请的全过程MRP计算。
一、 构建BOM结构及基础数据
我们假设一个简单的产品:"智能台灯(成品)"。其BOM结构如下:
| 层级 | 物料编码 | 物料描述 | 采购类型 | 单位 | 数量(每单位上层物料) | 计划交货时间 | 安全库存 | 当前库存 |
|---|---|---|---|---|---|---|---|---|
| 0 | LAMP-1000 | 智能台灯 | E (自制) | PC | - | 2 天 | 0 | 0 |
| 1 | ASM-200 | 灯头组件 | E (自制) | PC | 1 | 1 天 | 0 | 10 |
| 1 | BASE-300 | 底座 | F (外购) | PC | 1 | 5 天 | 50 | 100 |
| 1 | CTRL-400 | 控制电路板 | F (外购) | PC | 1 | 7 天 | 0 | 0 |
| 2 | LED-500 | LED灯珠 | F (外购) | PC | 10 | 3 天 | 200 | 150 |
| 2 | SOCKET-600 | 灯座 | F (外购) | PC | 1 | 4 天 | 0 | 20 |
| 2 | CASE-700 | 外壳 | F (外购) | PC | 1 | 6 天 | 0 | 0 |
BOM层级关系图解:
智能台灯 (LAMP-1000, 层级0)
├── 灯头组件 (ASM-200, 层级1, 自制)
│ ├── LED灯珠 (LED-500, 层级2, 外购, 10颗/组件)
│ └── 灯座 (SOCKET-600, 层级2, 外购, 1个/组件)
├── 底座 (BASE-300, 层级1, 外购)
└── 控制电路板 (CTRL-400, 层级1, 外购)
关键业务场景 :我们接到一张销售订单,需求为 150个 智能台灯,交货日期为2024-07-25。系统当前日期为2024-07-15。
二、 MRP需求传递与净需求计算(递归展开)
MRP运算的核心是基于时间倒推法 和BOM展开的递归计算过程 。系统从顶层成品(独立需求)开始,逐层向下计算相关需求。
第一步:对成品 LAMP-1000 进行计算
- 需求:独立需求(销售订单),数量150,需求日期 2024-07-25。
- 供给:当前库存 0。
- 净需求 :
150 - 0 = 150。 - 生成计划要素 :因采购类型为
E(自制),系统生成计划订单 。- 计划订单数量:150
- 计划订单完工日期:2024-07-25(必须满足客户需求)
- 计划订单开始日期:2024-07-23(完工日期 - 生产提前期2天)
第二步:BOM展开,计算第一层组件需求
LAMP-1000的计划订单(150个)触发了对其第一层组件的相关需求,需求日期为该计划订单的开始日期,即2024-07-23 。
-
对 ASM-200 (灯头组件):
- 需求:相关需求,数量 = 150 * 1 = 150,需求日期 2024-07-23。
- 供给:当前库存 10。
- 净需求 :
150 - 10 = 140。 - 生成计划要素 :因采购类型为
E(自制),生成计划订单 。- 数量:140
- 完工日期:2024-07-23(必须满足上层物料开始生产的需求)
- 开始日期:2024-07-22(完工日期 - 生产提前期1天)
-
对 BASE-300 (底座):
- 需求:相关需求,数量 = 150 * 1 = 150,需求日期 2024-07-23。
- 供给 :当前库存 100。注意 :还需考虑安全库存50。在MRP计算中,安全库存被视为持续的"需求",必须被满足 。因此,可用于冲减相关需求的可用库存为
100 - 50 = 50。 - 净需求 :
150 - 50 = 100。 - 生成计划要素 :因采购类型为
F(外购),系统生成采购申请 (假设MRP参数设置为直接创建采购申请)。- 数量:100
- 交货日期:2024-07-23
- 计划下达/采购申请日期:2024-07-18(交货日期 - 采购提前期5天)
-
对 CTRL-400 (控制电路板):
- 需求:相关需求,数量 = 150 * 1 = 150,需求日期 2024-07-23。
- 供给:当前库存 0。
- 净需求 :
150 - 0 = 150。 - 生成计划要素 :因采购类型为
F(外购),生成采购申请 。- 数量:150
- 交货日期:2024-07-23
- 计划下达日期:2024-07-16(交货日期 - 采购提前期7天)
第三步:BOM进一步展开,计算第二层组件需求
ASM-200的计划订单(140个)触发了对其下层组件(LED-500和SOCKET-600)的相关需求,需求日期为ASM-200计划订单的开始日期,即2024-07-22。
-
对 LED-500 (LED灯珠):
- 需求:相关需求,数量 = 140 * 10 = 1400,需求日期 2024-07-22。
- 供给 :当前库存 150。需考虑安全库存200,可用库存为
150 - 200 = -50(即库存不足覆盖安全库存)。此时,MRP会生成足够的需求来同时满足相关需求和 将库存提升到安全库存水平 。因此,总需求为1400 + 200 = 1600。 - 净需求 :
1600 - 150 = 1450。(这1450个需求中,1400个用于生产,50个用于补足安全库存缺口) - 生成计划要素 :因采购类型为
F(外购),生成采购申请 。- 数量:1450
- 交货日期:2024-07-22
- 计划下达日期:2024-07-19(交货日期 - 采购提前期3天)
-
对 SOCKET-600 (灯座):
- 需求:相关需求,数量 = 140 * 1 = 140,需求日期 2024-07-22。
- 供给:当前库存 20。
- 净需求 :
140 - 20 = 120。 - 生成计划要素 :因采购类型为
F(外购),生成采购申请 。- 数量:120
- 交货日期:2024-07-22
- 计划下达日期:2024-07-18(交货日期 - 采购提前期4天)
三、 生成的所有MRP计划要素汇总与解析
基于以上计算,系统生成了完整的计划建议链。下表汇总了所有生成的MRP计划要素:
| 序号 | 物料 | 需求来源/类型 | 需求日期 | 净需求计算过程 | 生成的计划要素 | 要素详情 |
|---|---|---|---|---|---|---|
| 1 | LAMP-1000 | 销售订单 (独立需求) | 2024-07-25 | 150 - 0 = 150 | 计划订单 | 数量:150, 开始:2024-07-23, 完工:2024-07-25 |
| 2 | ASM-200 | LAMP-1000计划订单 (相关需求) | 2024-07-23 | 150 - 10 = 140 | 计划订单 | 数量:140, 开始:2024-07-22, 完工:2024-07-23 |
| 3 | BASE-300 | LAMP-1000计划订单 (相关需求) | 2024-07-23 | 150 - (100-50) = 100 | 采购申请 | 数量:100, 下达:2024-07-18, 交货:2024-07-23 |
| 4 | CTRL-400 | LAMP-1000计划订单 (相关需求) | 2024-07-23 | 150 - 0 = 150 | 采购申请 | 数量:150, 下达:2024-07-16, 交货:2024-07-23 |
| 5 | LED-500 | ASM-200计划订单 (相关需求) | 2024-07-22 | (1400+200) - 150 = 1450 | 采购申请 | 数量:1450, 下达:2024-07-19, 交货:2024-07-22 |
| 6 | SOCKET-600 | ASM-200计划订单 (相关需求) | 2024-07-22 | 140 - 20 = 120 | 采购申请 | 数量:120, 下达:2024-07-18, 交货:2024-07-22 |
关键点解析:
- 需求传递路径 :需求严格遵循BOM结构,从独立需求(销售订单) 开始,通过计划订单 作为载体,将相关需求层层向下传递,直至所有外购物料 。这体现了MRP"自上而下分解,自下而上保证"的核心思想。
- 时间倒推逻辑 :所有物料的计划日期都基于其上层物料的需求日期和自身的提前期倒推计算。例如,成品必须在7月25日完工,因此其生产必须在23日开始;而外购件必须在装配开始前到位,因此其交货日期需匹配上层组件的开始日期 。
- 库存与安全库存冲减 :计算净需求时,可用库存(当前库存 - 安全库存) 被用于冲减毛需求。安全库存作为必须维持的底线,会直接影响净需求的计算,如
BASE-300和LED-500的例子所示 。 - 计划要素类型 :系统根据物料主数据中的采购类型自动决定生成计划订单(自制)还是采购申请(外购)。计划订单是内部生产的建议,后续可转换为生产订单;采购申请是向采购部门发出的采购建议,后续可转为采购订单 。
- BOM多级展开 :此实例清晰展示了多级BOM展开的过程。系统并非一次性计算所有物料,而是逐层、递归地进行。只有当上层物料的计划要素(计划订单)确定后,才能准确计算下层物料的需求日期和数量 。
通过这个完整实例,我们可以清晰地看到,一个顶层的销售需求如何通过MRP引擎,在考虑现有库存、安全库存和提前期的复杂网络后,被精确地分解为一整套在正确时间、为正确物料生成正确数量的生产和采购计划建议。这正是MRP作为制造业"大脑"的价值所在,它实现了供应链计划的自动化、精准化和可视化 。计划员可以在MD04(库存/需求清单)中直观地查看这个完整的供需链条,并对任何异常(如交货期无法满足)进行干预和调整。