某顾问被客户挑战为什么 MD01不是所有物料全部运行 MRP

作者:ABAP技巧与实战 约 10 分钟阅读 更新日期:2025-03-02 1 年前更新 标签:MM, SD, 物料管理, 销售分销
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

[ ABAP 技巧与实战 ](javascript:void\(0\);)

编者荐语:

希望更多的顾问能把自己的经验分享出来.

以下文章来源于咨询顾问进阶与实战分享 ,作者Cyrus & Bi

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

**咨询顾问进阶与实战分享** .

笔者ABAP—PP模块—项目经理,分享MRP实战技术、行业解决方案、顾问高效成长、顾问及PM软技能提升、英语口语提升等。入行来,受领导倾情指导、良好氛围影响。秉持一个观念:经历的项目经验、知识、沉淀不分享,跟"手握黄金万两的守财奴"无异。

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

视频详解

点击上方蓝字关注我们吧

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

今日分享-目录

今日分享内容目录

---

序号 | 内容 | 视频时间段

1 | 客户常见提出的疑问 | 00:00~02:28

2 | PA对计划文件条目的解释 | 02:29~11:03

3 | MD01与MD20的逻辑对应关系 | 11:04~18:35

4 | 计划文件条目实战说明及注意点 | 18:36~25:55

下期计划分享内容:

物料主数据MRP视图字段讲解,或 MRP高阶技术总结分享

Today's share

客户常见提出的疑问

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

咱们实施项目过程中,或者研究 PP

技术时,计划文件条目往往会被顾问视为一个大概清楚的点,但细节又不能清晰表达。部分实施顾问在项目上经常又会被客户提问,回答不是客户想要的,影响了客户对顾问的信任度。

客户常见疑问:

1.MD01 事务代码的描述是全工厂的物料运行 MRP ,为何用户运行时系统显示只有几个物料的计划订单、相关需求发生变化?

2.MD02 和 MD01 的区别是什么?

3.MD01 和 MD01N 的区别是什么?

Questions

PP PA计划文件条目相关解释

** 工厂运行 MRP 的前提条件:计划文件条目 **

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

** 1.低层级码 **

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

计划文件条目包括 low-level coding 信息, 不同的 low-level 类似表示物料的层级,让 MRP 计算的时候会先计算

000 ,再 001 ,再 002 等。一个物料的 low-level 代码可以在物料主数据上也是可以查看的。

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

父项低层次码: 000

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

子项低层次码: 001

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

** 2\. NETCH或NETPL标识 **

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

物料是否发生了 MRP 相关的( NETCH 或 NETPL 标识)相关的变化。

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

NETCH 与 NETPL 、 NEUPL 的区别: NETCH 无视 Planning horizon (再计划限度);

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

(注意:该配置在 S4 已经被移除,可以理解成在 ECC 里考虑运行效率,只考虑在配置的再计划限度天数里运行 MRP ,但是 S4 HANA

的数据库和当前的硬件条件不需要考虑相关的效率问题) NETPL 只考虑 Planning horizon 天数内的 MRP 变化(注意:该参数在

ECC 存在,在 S4 里已移除); NEUPL 是无视物料是否变化,全部重新生成计划文件条目标识,全工厂物料全运行 MRP 。

** 3\. 计划文件条目标识 **

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

表示:如果一个物料有计划文件条目的标识,系统再次运行 MD01 时才会重读 BOM ,或计划订单、 PR 等订单建议

才会删除订单号进行重新生成新号。 例:

• 第一次运行 MRP ,此刻系统中有部分物料含计划文件条目标识

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

• 立马第二次运行MRP,结果:未更改采购建议(表示此时系统所有物料的计划文件条目的标识均为空,即MD01只会考虑计划文件条目有标识的物料数据)

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

• 第三次运行,选取NEUPL

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

表示系统会将所有物料均标记上计划文件条目各参数标识,对工厂下所有物料运行 MRP

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

(细节:运行 MD01 系统考虑的物料是 MD21 中维护了计划条目标识的,通常当物料创建、维护 MRP

视图时就立即产生了计划条目行;但执行一次 MD01 后,计划条目标识会被删除,如果需要可在 MD20 前台维护或 MDAB 后台维护)

PA explanation

MD01与MD20的字段逻辑对应关系

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

• ** Net change planning ** ** 净更改计划 ** : NETCH的缩写,系统运行MD01时若选择NETCH,考虑Net change planning 净更改计划标识打上 X 的物料;

笔者查阅 ** PRESS ** 书籍中, mode1 的解释是:

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

如果未确认的计划订单(或其他采购要素)的需求数量日期或批量大小程序有任何变化,系统将会为 MRP 运行中的新增数量重新读取 BOM 。

故笔者认为:在 md21 中无专门对应 mode1 的字段,当前台 MD01 选择 mode1 时系统读取的是物料被标记 NETCH

的。

• ** Reset ord.props ** ** 重置订单建议 ** : 系统运行MD01时若选择planning mode为3,则考虑Reset ord.props标识打上X的物料;

(此处有两个疑惑点,1.目前不论删除计划订单,PR,修改订单数据该字段都不会打上X,只能MD20进行标记,未得出何种业务场景会标记上?2.若Reset

ord.props标识 未打上X 的物料,使用md01选择mode 3,系统也会重新产生新的采购申请或者计划订单号)

Press 中对 mode3 的说明:

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

系统删除现有的采购建议(即上一次计划运行的整个计划数据),除非它们已经被确认了或者是有重读 BOM 和工艺路线,否则将全部重新创建全新的采购建议。

• ** Re-explode BOM ** ** 重扩展BOM ** : 系统运行MD01时若选择planning mode为2,则考虑Re-explode BOM标识打上 X 的物料;

Press 中对 mode2 的说明:

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

如果 BOM 主数据、工艺路线、生产版本或 BOM 有变化,系统会重读 BOM 和工艺路线。这有助于确保系统为现有的未确认的计划订单重新展开

BOM

验证 Re-explode BOM 重扩展 BOM 标识 **如何被标记上** 的: 父项物料的 MD21

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

子物料的 MD21

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

BOM

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

修改一个组件的数量

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

再次查看父项的 MD21 :

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

NChge plng = NETCH NChge PHor = NETPL (由于 S4 没有 planning horizon ,故都会打上)

Explode BOM = Bom 被修改了,运行 MRP 时需重新读 BOM MPS ind 表示 该物料的 MRP 类型是否为 M0

等 MRP 类型,如果是则会打上标记, 例:将父项物料的 MRP 类型改为 M0 后,标识 MPS 打上了,使用 MD02 时报错

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

Logic

最后说明

1\. 针对 planning mode 123 ,和计划文件条目 md21

的各标识。通过笔者测试和验证只能证明系统在考虑计划文件条目的标识,没有达到完美的一 一对应的严谨的逻辑。 比如:物料 md20 动了 或者手工勾上的

netch , 订单建议没有勾,运行 md01 的时候,当选择 mode 3 时 ,系统也会给把号删除了重新建。

2.S4 HANA MRP live ( MD01N )运行时,只会有 mode1 和 mode3 ,系统应该是将 1 和 2

的功能和实现逻辑合并了。

3\. S4 HANA MRP live 弱化了计划文件条目的概念,因为运行 md01n 时,系统会在 hana

数据库中运行,对所有物料直接进行最新 mrp 运算,不考虑效率问题。(至于 mrp live 和 mrp classical

的区别,笔者可根据大家兴趣后续出一篇文章进行讲解)

4.MRP live md01n 和 md01 ,笔者从项目实战中,有的项目数据量大,已经使用了 3,4 年的系统。笔者去运维解决问题时,发现

md01 至少运行几个小时,使用 md01n 只会 2,3 分钟。说明 sap 在这边的运行速度优化效率上是极大的。

某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图
某顾问被客户挑战为什么 MD01不是所有物料全部运行 M - 封面图

5\. 通常,我们在后台 JOB 全工厂运行 MRP 之前,都会在 MDAB 中根据工厂去创建计划文件条目。目的是: ( 1

)以防有的物料出现 bug 未生成计划文件条目行,也就是 md21 压根看不到数据

...

ABAP技巧与实战

关于作者:ABAP技巧与实战

企业信息化与 SAP 技术顾问,长期专注 SAP ABAP、FI/CO、MM、SD 等模块的技术分享与实战经验总结。查看更多介绍

来源说明:本文内容由「某顾问被客户挑战为什么MD01不是所有物料全部运行MRP.md」整理生成,仅用于内部技术分享与学习交流。