SAP S/4HANA MM模块培训 14 - MRP执行方式:总计划、单项计划与交互式计划

本课集中回答一个很实际的问题:在 SAP S/4HANA 中,MRP 到底应该以哪种方式执行?视频没有完整跑出一轮 MRP 结果,而是比较了经典总计划、后台总计划、单项多层计划、单项单层计划、交互式计划和 MRP Live,并在 SAP GUI 中打开了 MD01 与 MDBT。因此,本文的重点是建立一张准确的“执行方式地图”,说明各事务码的范围、层级和使用边界,而不是虚构视频中并不存在的计划订单、采购申请或 MRP 清单。
一、本课目标与实际范围
视频议程提到了总 MRP、MRP Live、计划顺序、单项计划、交互式计划、计划范围以及不同 MRP 过程。不过,视频在讲解交互式计划时结束,后面的“计划范围”和“不同 MRP 过程”没有继续展开。
本课实际完成了以下内容:
- 区分经典总计划、MRP Live 与单物料计划;
- 展示经典在线总计划
MD01的入口和控制参数; - 展示后台总计划
MDBT的变式列表; - 解释总计划为什么按低层码顺序处理物料;
- 比较
MD02单项多层计划与MD03单项单层计划; - 介绍
MD43交互式单物料计划,以及MD02的“保存前显示结果”选项; - 明确哪些内容只在菜单或议程中出现、没有实际执行。

二、先建立完整的 MRP 执行方式地图
1. 经典总计划
经典总计划用于在一个工厂或计划范围内处理 MRP 相关物料。这里的“总计划”不能简单理解为无条件处理系统中的所有物料:实际处理范围还会受到工厂、计划范围、处理键、计划文件条目以及其他选择条件影响。
经典入口主要有两个:
| 事务码 | 执行方式 | 适用场景 | 视频中的操作 |
|---|---|---|---|
MD01 | 前台在线总计划 | 受控运行、培训、测试或需要前台观察的场景 | 打开选择屏幕并输入工厂 1710,没有取得运行结果 |
MDBT | 后台经典总计划 | 定时、周期性或较大范围的计划作业 | 打开变式列表,没有选择变式、启动或调度作业 |
2. MRP Live
MRP Live 是 SAP S/4HANA 面向 HANA 优化的计划方式。手工启动入口是 MD01N,后台计划则可以使用 Fiori 应用“Schedule MRP Runs”(应用 ID F1339)。它可以按工厂、物料、产品组、MRP 控制员等条件确定范围。
需要特别注意:MD01N 的“手工启动 MRP Live”不等于 MD43 的“交互式单物料计划”。前者仍然是启动 MRP Live 运行,后者是面向一个物料的交互式处理过程,两者不能只因为都由用户手工触发就混为一谈。
3. 单物料计划
单物料计划用于从一个指定物料开始处理,而不是启动一个工厂范围的总计划。视频比较了三个入口:
MD02:单项多层计划,从起始物料沿 BOM 向下继续计划;MD03:单项单层计划,只执行当前物料层级的计划,不递归完成整个 BOM;MD43:交互式单物料计划,让用户查看、调整并决定是否保存结果。
三、通过菜单进入 MD01 在线总计划
视频在 SAP Easy Access 中使用以下菜单路径进入在线总计划:
Logistics → Production → MRP → Planning → Total Planning → MD01 - Online

同一菜单区域还能看到 MDBT、MD02、MD03、MD43 和 MD01N。这张菜单实际上把“总计划”“单物料计划”和“MRP Live”放在了一起,但相邻并不代表它们具有相同的处理逻辑。
进入 MD01 后,视频输入工厂 1710,并展示了以下参数:
| 字段 | 视频值 | 含义 |
|---|---|---|
| Scope of planning | 空 | 本例没有填写计划范围 |
| Plant | 1710 | 本次选择的工厂 |
| Processing key | NETCH | 总计划范围内的净变化计划 |
| Create purchase req. | 2 | 视频系统显示为开放期内创建采购申请 |
| Schedule lines | 3 | 计划协议交货计划行控制参数 |
| Create MRP list | 1 | 创建 MRP 清单的控制参数 |
| Planning mode | 1 | 调整计划数据,即普通模式 |
| Scheduling | 1 | 确定计划订单基本日期 |
| Planning date | 30.10.2021 | 视频系统中的计划日期 |
| Parallel processing | 未勾选 | 本例未启用并行处理 |
| Display material list | 未勾选 | 本例未要求显示物料清单 |

这些值只是视频演示系统在当时的输入和默认配置,不能直接复制成所有项目的标准设置。特别是采购申请、计划协议交货计划行和 MRP 清单的创建方式,应根据业务过程、物料采购类型和项目配置决定。

视频在大约 00:04:15 点击了执行图标,但画面随后仍停留在输入屏幕,没有展示运行统计、物料列表或计划结果。本文因此不声称此次 MD01 已成功完成,也不声称系统生成了任何计划订单、采购申请或 MRP 清单。
四、MD01 前台运行与 MDBT 后台作业如何取舍
MD01:由当前会话等待处理
在线执行的特点是用户在 SAP GUI 会话中输入参数并启动计划。优点是便于培训、测试和受控操作;缺点是大范围计划可能占用会话较长时间。实际耗时取决于计划物料数量、BOM 层级、低层码、需求数量、配置和系统资源,不能用固定分钟数概括。
MDBT:通过变式和后台作业执行
后台方式适合计划性、周期性或范围较大的经典总计划。一般做法是维护选择参数或变式,再设置一次性或周期性后台作业。它不要求用户一直保持前台 SAP GUI 会话。

视频将后台 MRP 安排在夜间、甚至凌晨 1 点,作为一个项目经验示例。这个时间并不是 SAP 的固定规则。企业应根据需求变化速度、业务截止时间、接口窗口、系统负载和后续作业依赖设计频率与时间。MRP Live 的性能优势还可能使企业采用比传统夜间批处理更高的运行频率。
视频随后打开 MDBT 的 Total Planning: Variants 页面。画面显示程序 RMMRP000 的若干变式,以及 Start immediately、Schedule、Variant、Display Scheduling 等按钮。

这里必须保留操作边界:视频只打开了变式列表,没有选择或创建变式,也没有点击立即启动、设置日期时间、定义周期或检查后台作业日志。因此,这一段是“认识后台入口”,不是一套已经完成的后台调度实操。
五、总计划为什么按低层码顺序处理
总 MRP 不能随意按物料编号顺序计算。系统需要确保上层物料的需求先传递到下层组件,再处理更低层级,否则下层物料可能在需求尚未完整形成时就被计划。
SAP 使用低层码(Low-Level Code)确定物料在所有 BOM 结构中出现的最低层级。总计划通常按以下顺序推进:
000 → 001 → 002 → …

可以这样理解:
- 先计划低层码
000的成品或最高层物料; - BOM 展开后形成对下层组件的相关需求;
- 再计划低层码
001的物料; - 继续形成更低层的相关需求;
- 最后处理
002及更低层物料。
低层码不是“某一张 BOM 中看到的层号”那么简单。如果同一物料在多张 BOM、多个层级出现,系统要用它出现的最低位置来保证整体计划顺序。视频用两套 BOM 结构说明了这种跨结构排序思想,但没有在 SAP 中打开物料主数据或 BOM 去查看具体低层码。
六、MD02 单项多层计划与 MD03 单项单层计划
MD02:从一个起始物料向下完成多层计划
MD02 只要求用户指定一个起始物料,但“单项”并不表示系统只处理这一条物料记录。系统会展开该物料的 BOM,生成下层相关需求,并继续计划相关组件,直至所需层级完成。
它适合以下场景:
- 针对某个成品或半成品重新执行完整层级计划;
- 验证该物料的 BOM 展开和供需结果;
- 在不启动工厂总计划的情况下处理一条物料链。
MD03:只执行当前物料的单层计划
MD03 处理当前选择物料的一个层级,不继续递归完成整个 BOM。更准确地说,它仍可能通过 BOM 展开产生直接下层组件的相关需求,但不会像 MD02 那样继续计划所有下层组件。因此,不能把它写成“完全忽略组件”,也不能把它当作多层总结果的替代品。

| 比较项 | MD02 单项多层 | MD03 单项单层 |
|---|---|---|
| 起点 | 一个指定物料 | 一个指定物料 |
| BOM 展开 | 沿 BOM 向下处理 | 处理当前层级 |
| 下层相关需求 | 形成并继续计划相关组件 | 可形成直接下层需求,但不继续完整多层计划 |
| 典型用途 | 完整检查一个物料链 | 只希望重新处理当前物料 |
| 视频实操 | 只讲概念和菜单入口,未打开事务 | 只讲概念和菜单入口,未打开事务 |
视频讲师把 MD03 描述为实际使用较少,这是个人项目经验,不能写成 SAP 的产品限制。是否使用单层计划,取决于企业的故障处理、计划职责、运行范围和操作规范。
七、从完整菜单理解各事务码的关系
视频后段再次展开 MRP Planning 菜单,并高亮 MD02。菜单中可见的主要事务如下:

| 事务码 | 菜单名称 | 本课边界 |
|---|---|---|
MD01 | Online | 已打开并填写工厂,未展示结果 |
MDBT | As Background Job | 已打开变式列表,未调度作业 |
MD02 | Multilevel Single-Item Planning | 仅讲解概念并在菜单中指示 |
MD03 | Single-Level Single-Item Planning | 仅讲解概念并在菜单中指示 |
MD43 | Single-Item Planning, Interactive | 菜单可见,未打开 |
MD50 | Single-Item Planning, Sales Order | 仅画面可见,视频未讲解 |
MD51 | Single-Item Planning, Project | 仅画面可见,视频未讲解 |
MD01N | MRP Live | 只做概念介绍和菜单展示 |
不要因为某个事务码出现在画面中,就把它写成本课已经讲完或执行过的内容。课程证据必须以讲解和实际操作为准,而不是以菜单上“看得到”为准。
八、交互式计划、保存前显示与模拟模式
视频结尾介绍了三种容易混淆的概念。
1. MD43 交互式单物料计划
MD43 允许用户对单个物料进行交互式计划:读取当前供需状况,手工启动计划,查看和调整结果,再决定是否保存。它强调用户对结果的介入。
2. MD02 的“保存前显示结果”
在 MD02 中选择 Display results before they are saved,仍然执行的是单项多层计划,只是在写入结果前设置一个检查点,让用户先查看多层计划结果。它不会因此变成 MD43。
3. MRP Live 的手工启动
用户也可以手工打开 MD01N 启动 MRP Live,但这只是“启动方式是手工”,并不意味着它属于交互式单物料计划。

视频还提到了 Simulation mode,但没有进入具体界面、选择参数或展示模拟结果。课程在解释 MD02 的保存前显示结果时中断,因此本文也不扩写一个视频没有完成的模拟操作教程。
九、常见误区与操作检查
误区 1:总计划就是无条件处理所有物料
不准确。总计划仍要结合工厂或计划范围、处理键、计划文件条目和选择条件判断实际范围。
误区 2:后台计划必须每天凌晨 1 点运行
不准确。这只是视频中的经验示例。企业应基于业务周期和系统作业链设计时间。
误区 3:MD02 只处理一个物料
不准确。它从一个物料开始,但会沿 BOM 向下执行多层计划。
误区 4:MD03 完全不会产生组件需求
不准确。单层计划可以形成直接下层相关需求,只是不继续递归完成组件的多层计划。
误区 5:MD01N 手工运行就是交互式 MRP
不准确。MD01N 是 MRP Live 的手工入口;MD43 才是经典交互式单物料计划。
误区 6:视频点击执行按钮,说明计划已成功
不准确。必须看到运行统计、物料清单、计划结果、后台日志或其他可验证证据,才能声称运行完成。本视频没有这些证据。
十、本课完成与未完成边界
| 已完成 | 未完成 |
|---|---|
| 比较经典总计划、MRP Live 和单物料计划 | 没有详细讲解 Scope of Planning |
打开 MD01 并输入工厂 1710 | 没有展示 MD01 运行统计或物料结果 |
| 展示 MD01 控制参数 | 没有验证计划订单、采购申请或 MRP 清单 |
| 打开 MDBT 变式列表 | 没有创建、选择、启动或调度后台作业 |
| 解释后台运行频率和低负载时段 | 没有设置具体日期、时间和周期 |
| 解释低层码计划顺序 | 没有在 SAP 中查看实际物料低层码 |
| 解释 MD02 与 MD03 的范围差异 | 没有打开或执行 MD02、MD03 |
| 介绍保存前显示、交互式计划和模拟概念 | 没有执行 MD43、模拟模式或 MRP Live |
十一、参考资料
- SAP Learning:在 SAP S/4HANA 中执行计划运行
- SAP Learning:计划 MRP 运行
- SAP Help:执行 MRP Live
- SAP Help:经典 MRP 事务码概览
- SAP Help:单项多层计划
- SAP Help:单项单层计划
总结
选择 MRP 执行方式时,应先回答三个问题:计划范围是一座工厂还是一个物料,是否要沿 BOM 继续处理下层组件,以及计划应该在前台受控运行还是交给后台作业。MD01 与 MDBT 面向经典总计划,MD02 与 MD03 区分多层和单层,MD43 强调交互处理,MD01N 则是 MRP Live 的手工入口。只有把这些维度分开,才能避免“事务码不同但含义被混用”的常见错误。


