现在的位置: 首页 > 综合 > 正文

MRP控制参数(1) – 计划文件与处理代码(Processing key)

2013年09月12日 ⁄ 综合 ⁄ 共 3000字 ⁄ 字号 评论关闭

花几个篇幅研究下运行MPS/MRP的控制参数,这些很关键的控制参数,但又很少有人能把逻辑关联弄的很清楚。

NETCH(净变化计划):即只计划上次计划以后计划相关内容发生变动的物料(注意,某些物料的参数发生变动了,系统也认为计划内容没发生变动)
NETPL(计划周期内的净变化计划):即只在计划周期内执行净变化计划,周期外将不进行计划
NEUPL(重新计划)所有的物料不管有没有变动都再次计划。

首先要介绍两个概念:

1.       运行类型(Planning run type): 即处理代码(Processing key),决定了那些物料参与MRP运算

2.       计划文件(Planning file):是一个包含所有物料清单的文件,一旦物料的变更与需求计划相关,与自动更新文件中的字段. 简单来说,计划文件决定了每次MPS/MRP运算时,有哪些物料参与,以何种运算逻辑(MPS/MRP)等等.

所以,SAP在运行MPS/MRP运算时的第一个步骤就是读取计划文件.有很多SAP顾问可能还不知道有计划文件这个东东吧,嘿嘿,
讲到这里,介绍和计划文件相关的4个事务代码:

1.MD20 – 创建计划文件
2.MD21 – 显示计划文件
3.MDAB – 在后台创建计划文件
4.MDRE – 计划文件一致性检查
以上4个事务代码看名字就知道用途,不再赘述,这里稍微提一下MDRE(计划文件一致性检查)的用途. 计划文件一旦创建,在SAP中是永久存在的,对物料主数据的更新等动作只会更新相应计划文件中的字段,所以一旦有计划物料变为非计划物料,这些物料的计划文件就是垃圾资料,不但会影响MPS/MRP运行的速度,还有可能造成错误,MDRE的作用就是一致性检查后删除这些无用的计划文件.
 
接下来我们来看看计划文件究竟是啥样的,丑媳妇总要见公婆.

点击查看原图

记录类型: 虚拟件为D,其他物料为B

低层代码:由物料主数据和在BOM中的层次决定,属于MRP展开逻辑的理论知识,有兴趣的自己研究吧,可以不用过多关注.
MPS标识:勾中的标识以MPS逻辑运算,否则为MRP
全修改计划: 即处理代码(Processing key)中的NETCH,说到这里,终于快到本篇博文的主题了,课前铺垫还真是长,贱客抹把冷汗先.
净更改PHor:即处理代码(Processing key)中的NETPL, 有同学会问,处理代码不是有3个嘛?为啥差一个? 贱客说: 不要着急,马上回来*O*.
复位建议: 如被勾中,将在MPS/MRP运算时删除并重新创建前次运算产生的计划订单,计划行及采购申请
展开BOM: 如被勾中,将在MPS/MRP运算时,重新展开前次计划订单,计划行及采购申请中的BOM
更新时间标记:该计划文件何时被更新, 为格林威治时间,小汗一个
MRP时间标记:前次运行MRP的时间,同样为格林威治时间
创建日期:该计划文件的日期.
MRP控制者/物料描述: 为空的,很诡异, 不知哪位好心人可以告诉贱客原因, 贱客实在不想看SAP的标准代码.
好,简单介绍完计划文件, 请我们今天的猪脚处理代码(Processing Key)登场:
1.       NETCH – 总水平的净变化
2.       NETPL  – 计划水平的净变化
3.       NEUPL – 再生计划
是不是越看越晕, 贱客郑重声明, 这是SAP的官方中文翻译, 和贱客无关,嘿嘿.贱客第一次看到SAP将Shop floor control翻译成商店低价控制的时候, 也会忍不住有要砸电脑的冲动J
好了,我们用通俗易懂的语言来解释下这3个控制参数的用途.首先, 回顾前文提到的MPS/MRP运算时的第一个步骤就是读取计划文件.如果我们的处理代码是NEUPL(再生计划)的话,MPS/MRP运算之前会删除当前存在的所有计划文件,然后对所有物料重新产生计划文件并再继续下面MPS/MRP的运算步骤.这也是为什么计划文件中没有这个字段标识的原因,嘿嘿.另外,新系统第一次MPS/MRP运行时,也要用NEUPL跑一次.
其实如果没有系统效能的考量,每次MPS/MRP时都应该用NEUPL,这样可以保证每次运算都会包括所有的材料,读取到的主数据的资料都是最新的.
但是,理想是美好的,现实是残酷的.因为MPS/MRP每次运算的时间都很长,而且运算时会影响用户的正常使用,所以我们需要找一个效能与实用的折中点,就产生了NETCH和NETPL.意思是和计划相关的参数自前次MPS/MRP运行后有更新的物料才参与下次运算, 不过NETPL与NETCH更过分, NETCH是只要有变更就需要参加运算, 而NETPL是一定计划期间内有变更的物料才参加运算,否则也不参加.
所以基本上不是用银河系列超级计算机跑MPS/MRP的用户, 我们都会建议用NETPL和NETCH来运行MRP运算.另外要注意的是,单个物料无法使用NEUPL运行MPS/MRP.
讲到这里,大家可能又有几个问题产生了:
1.       净变化/修改具体指的是哪些内容?
2.       选择NETCH/NETPL时, SAP怎么找到参与运算的物料?
3.       NETPL的计划期间是如何定义的?
欲知详情,请待下回分解, 贱客要这么说大家是不是要疯掉了,嘿嘿~,各位看官莫急,待贱客细细道来.
净变化(Net Change)按照SAP的解释,包括以下内容:
1.       库存变化:物料的供求关系发生变化
2.       生成物料相关的凭证:采购申请,采购订单,计划订单,销售需求,预测,独立需求或预留等
3.       主数据中与计划相关的字段更新
4.       删除收(Receipt)或发(Issue)的数量
5.       特别注意:配置中关于计划相关的变更,不会自动更新计划文件,必须重新生成计划文件,即如果后台计划相关的参数有调整过,最好用NEUPL计划运行一次MPS/MRP,以确定更新能正确及时的生效.
一旦这些净变化产生,SAP就会判断当前时间,发生在计划期间内的,会同时标识计划文件中的”全修改计划”和”净更改Phor”字段, 如果在计划期间外的净变化,则只会标识计划文件中的”全修改计划”字段。这样子在MPS/MRP第一个步骤:读取计划文件时,就可以根据我们界面上选择的NETCH或NETPL挑选出要参与运算的物料了,这样子和谐了吧,嘿嘿.
接下来先看看计划期间在何处设定:
1.       事务代码: OMDX
2.       路径:SPRO--生产—物料需求计划—计划—MRP计算—定义计划区间

点击查看原图

所以接下来我们看看如果对1700工厂的物料变更在500天之内和之外的变更对计划文件会有什么影响.以AS000-000-000这个物料的计划文件为例,在我们测试伊始,它是裸妆.

点击查看原图

我们修改物料主数据中的自制时间,再回头看该物料的计划文件,可以看到NETCHNETPL都已自动更新,有没有童鞋有点疑惑为啥同时更新两个字段其实很好理解,计划期间内更新过了,这个物料一定是更新过了.所以这种状况,无论是用NETCH或者NETPL,MPS/MRP运算都会纳入此物料.

点击查看原图

接下来我们以NETCH运行MRP再查看计划文件,发现该物料又变回裸妆的样子.

点击查看原图

然后我们手工创建一张500天(2013/03/22)后的计划订单,再看看是什么状况

点击查看原图

可以看到只有全修改计划被标识这样子运行MPS/MRP,如果控制代码选择NETPH,改物料将不会参加运算.

抱歉!评论已关闭.