SAP PP学习笔记11 - PP中的MRP相关概念,参数,配置

news2024/9/25 15:29:02

上文讲了作业区的概念及配置。

SAP PP学习笔记08 - 作业区(工作中心Work Center),作业区Customize-CSDN博客

SAP PP学习笔记09 - 作业区(工作中心Work Center)Customize2(管理码,班次顺序,计算式),标准Text,作业区阶层-CSDN博客

本章主要讲了PP模块的MRP相关概念,参数,配置。

- MRP运行级别:工厂(online),工厂(background),品目,这3种级别

- 交叉工厂的MRP运行策略

- MRP的控制参数

  比如处理Key(NETCH,NETPL,NEUPL的区别),采购申请生成,纳入日程,MRP一览登,计划模式等主要参数,和一些次要参数等

1,MRP概览

有两个输入:

- Sales orders:销售订单

- Planned ind reqmts:计划独立需求

跑完MRP之后,会产生

- Planned order:计划订单

  注意真实世界中,一般不会照搬SAP生成的计划订单,而是会修改很多,

  SAP自动生成的计划订单只是一个参照

  多数公司会把自己的经验,决策,因素等等人为的决定加进去,做成一个最终的计划订单

  然后再变成生产订单,采购需求等等

2,Spro设定能不能跑MRP

2-1,Plant 工厂

- Activate MRP:一个工厂能不能跑MRP,是需要激活设定的

- Set up planning file:即使工厂级别激活了,哪个物料能跑MRP也是需要在计划文件中定义的

Spro > 生产计划/ 管理 > 资材所要量计划 > 计划文件Entry

A),资产所要量计划

 - 所要量计划有效化

   - 打勾 表示这个工厂可以跑MRP

   - 不打勾 表示该工厂不能跑MRP

      现实项目中,那种 无价值工厂,就不需要跑MRP,它只是用来记录一些无价值的东西

B),计划文件设定

这里说一下跑MRP的原理。

当跑MRP的时候,会先去找计划文件(其实就是一个表),然后查询哪个料需要跑,哪个不需要

但是不建议手动做这个计划文件,因为还有其他方法来自动生成计划文件:

MD01 MRP实行

- MRP实行Mode

  - NEUPL:这个参数有2个作用

    - 给所有物料重新建立一次计划文件

    - 给所有物料重新跑一次MRP

MD41 单一品目

这个可以限定跑某个品目的,选NEUPL 之后,也可以干相同的事情

  - NEUPL:这个参数有2个作用

    - 给所有物料重新建立一次计划文件

    - 给所有物料重新跑一次MRP

2-2,物料

- Valid MRP type MRP类型

- Valid material status 物料状态

MM01/MM02/..

- MRP Type

  - ND 无计划:如果选了这个,那就说明该物料不能跑MRP

3,MRP Customize

按优先级从高到低有如下3种

- 物料Master

- MRP Group

- Plant Parameters

- 物料Master

MM01/...

MRP 1 Tab

- MRP Type

- MRP Group 

Spro > 生产计划/ 管理 > 资材所要量计划 > MRP Group

这样就打开了MRP Group的设定页面

这个里面设定了很多参数

这样使用的时候输入一个Group号即可,而且修改也方便,修改一处,所有用到的地方都反映了

这里面的参数的意义,咱们后面再说。

4,MRP Run

- Plant单位 - online(前台跑,意思就是在你客户端上跑,电脑死机或重启了,处理就中断了)

- Plant单位 - background(后台跑,就是在服务器上跑,前台死机了也不会影响)

- 物料单位 - online(一般手动跑的时候用)

- Plant单位 - online

Menu > Logistics > 生产 > MRP > 计划 > 全计划实行

MD01 Online:Plant单位

- Plant单位 - background

- MDBT 全计划实行

设定一个变式,然后在服务器上实行。

即使实行的时候,前台死机了,也不会影响MRP的运行

- 品目单位 - online

5,Low-level code 低阶码

算物料的时候,会先算低的,再算高的。

如下图会先算 000 的,然后根据000 再算001,根据001的结果再算002

- 000 低阶

- 001,002... 高阶

6,Cross-Plant Planning 交叉工厂计划

比如 Plant 1000 --》Plant 1100 --》Plant 1000 都有转送的这种情况,就叫交叉工厂

那么跑MRP 的时候,应该谁先跑呢?

SAP可能会先执行 Plant 1000 的MRP,然后再执行 Plant 1100 的MRP

但是 Plant 1100 执行MRP 的时候,SAP会把Plant 1000 相关的物料再执行一遍 MRP,

这样既能算的很准确,又不会浪费太多资源(不会死循环)

这里有一个很重要的概念:

- Scope of planning 计划范围

比如 MD01 MRP实行 的条件中就有这个字段

它定义了跑的MRP的工厂范围(比如上图中的Plant1000和Plant1100)

这个字段的值来自Customizing

Spro > 生产计划/管理 > 资材所要量计划 > 计划 > MRP计算

计划范围 - 全计划实行(总计划运行的计划范围)

任意点一个计划范围,比如 9999,然后双击 Plant/MRP Area 的顺序

这个图的意思是说按顺序先跑 2400,再跑 2500...

- 1 2400

- 2 2500

- 3 2300...

代入到上面那个示例,跑完 Plant1000之后,跑Plant 1100的时候,发现有东西卖给 Plant1000

SAP就会把Plant 1000的MRP再跑一遍,但是它不会跑Plant 1000的全部物料,只会跑相关的物料

跑这种计划范围MRP的时候,会非常花时间的,比如可能需要数个小时,

那么SAP为了缩短跑MRP的时候,就强制采取了并行处理的方式

- 并列处理

即使采取并行处理,还有个问题就是并行跑几个呢?这也需要在 Spro中设置:

Spro > Logistics > 生产 > MRP > 关联处理

MRP的并行处理

比如这里设置 Session 为 5

那么就可以用5个Session并行处理,

这样本来单Session需要5个小时的话,5个Session一起只需1个小时就OK了。

当然这种对服务器性能肯定是有要求的

7,Control Parameter for MRP - MRP的控制参数

- Processing Key MRP的实行Mode(处理Key)

- NETCH

  上次跑完之后到这次再跑中间更新的部分

  比如上次 2024/5/3,本次 2024/5/5,那么就是这两天的变化会跑出来

- NETPL

  从现在起往前数一个Customize的日期,比如 3个月,

  比如今日是 2024/5/5,那么就是从2024/2/5到现在

- NEUPL

  ALL,所有全跑一遍

  咱们上面讲的 计划文件 的时候说了,系统新上线之后,一定要跑一遍 NEUPL,

  就是要把所有物料的计划文件给重新生成一遍

-  Create purchase requisition 购买依赖生成(创建采购申请)

- 1 购买依赖(采购申请)

   会生成采购申请

- 2 开放期间内的购买依赖(未清期间的采购申请)

- 3 计划手配(计划订单)

   会生成计划订单

咱们看下面这个图:

MRP可能会产生

如果选了 3 - 计划手配(计划订单)

- Planned Order 计划订单,然后计划订单会再转成

    - Production order 生产订单

    - Purchase requistions 采购申请

如果选了 1 - 购买依赖(采购申请)

- Purchase requistions 采购申请

下面来说一下下面这个东西

- 2 开放期间内的购买依赖(未清期间的采购申请)

什么叫 开放期间(未清期间)呢?

比如 2/28要货,预计产线要投料了等等,那么L/T (LeadTime)是多长呢?

如下图所示的话,也就是2/20 到 2/28 的8天。

从2/15 到 2/20 这5 天时间是一个开放期间(未清期间),在这个时间段内运行MRP的话,就会生成 PR(采购申请)。

这个 开放期间 不会参与MRP 运算的,只是SAP系统建议你在这个期间把计划订单转成PR(采购申请)。

只有你在跑MRP的 界面选了这个选项,开放期间的数据才会被抽出来,当作MRP对象。

这个就叫开放期间(未清期间)。

未清期间的长度(比如上面的5天)是在哪儿设定的呢?

就在 MM02 > MRP 2 Tab

日程计划余裕Key(计划边际码)

- 001

  开放期间:10天,意思就是提前10天通知你该转为PR(采购申请)了

 - Schedule lines 纳入日程(计划交货表)

就是下面的Schedule lines那块儿,详细的以后再说,跟 上面的 购买依赖生成 逻辑上是相似的。

- Create MRP list MRP一览登录(创建MRP清单)

- 1 MRP 一览

   就是 T-code:MD05

   它会记录最后MRP跑的结果,它是静态的,你改了订单数量什么的它也不会变的

   只有当你再次运行MRP,它才会变

- 2 例外Message依存

  只有出错的时候才会登录MD05,需要在Spro里设定

- 3 无MRP一览登录

  如果选这一项,那么MD05里面就没有记录了

 

下面说一下例外Message的时候的MRP一览的设定:

- 2 例外Message依存

Spro > 生产计划/管理 > 资材所要量计划 > 评价 > 例外Message

 

就是这个设定

- 勾上 MRP一览登录,当出错的时候就会登录 MD05

 

- Planning mode 计划Mode(计划模式)

- 1 计划Data适用(标准Mode)

     BOM有变化,它才会重新读取

- 2 BOM/作业手顺 再展开(再次扩展BOM和工艺路线)

     不管BOM有没有变化,它都会重新读一遍

- 3 计划Data 消除/再登录(删除并重新创建计划数据)

     先把原来的计划订单结果给删除掉,然后重新生成一个号码,再去读取BOM

     一般不建议适用这个模式,因为号码删了再重新採番,就会消耗的特别块

所以可以看到,1 是最快的,2其次,3最慢

保险起见可能选 2 会好一些

- 日程计划

- 1 使用基本日程作成计划手配

  不会重新读取工艺路线和能力计划

- 2 Leadtime日程计划及能力计划

  会重新读取工艺路线和能力计划

下图总结了这两个选项

- Material Requirements Planning

  - 精确到Day

  - 不会去计算能力需求...

- Lead time Scheduling

  - 精确到秒

  - 重新计算能能力需求...

可以看到 【- 1 使用基本日程作成计划手配】 这个选项最大的特定就是快

如果你发现MRP运行时间太长,你又不介意能力需求,可以选参数1,就可以大幅减少运行时间

 

以上就是MRP 运行所需的主要参数。

下面再说一些其他参数。

- 对全构成品目运行MRP

比如 A = B + C (就是A 品目 由 B,C子品目构成)

A 改过了,但是B没改过任何东西

那么 B要不要跑MRP呢?

这个选项勾上了就要跑MRP,不勾就不用跑

- 结果照会(保存前)

就是跑完MRP,先显示结果,如果你对结果满意,就保存,不满意就关掉不保存,以后再重跑

 

- 品目一览照会

跑完MRP之后,让你看一下哪个品目跑了多长时间

左上角显示了 品目 按钮

 点一下 品目 按钮即可显示时间

 

- Simulation(模拟)

模拟的结果是这样

也可以保存

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1644541.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

菜鸡学习netty源码(五)—— EventLoop

1.EventLoop的类关系图 2. EventExecutor /*** 返回自身的对象* Returns a reference to itself.*/OverrideEventExecutor next();/*** 获取所属的EventExecutorGroup* Return the {link EventExecutorGroup} which is the parent of this {link EventExecutor},*/EventExecuto…

EPICS DataBase详解

1、分布式EPICS设置 1) 操作界面:包括shell命令行方式(caget, caput, camonitor等)和图形界面方式(medm, edm, css等)。 2)输入输出控制器(IOC) 2、IOC 1) 数据库:数据流,基本上周期运行 2)sequencer:基…

ThingsBoard如何接受设备通过TCP发送的报文

1、概述 2、案例 2.1、阐述 2.2、导入依赖 2.3、构建Netty服务链接,接受的端口为8092 2.4、对数据进行相应的处理发送到ThingsBoard客户端 2.5、通过TCP链接工具 ​2.6、查看遥测数据 1、概述 TCP(Transmission Control Protocol,传输…

关于 c++的模板库中的数组模板 is_array_v的测试

&#xff08;1&#xff09;该模板的源代码如下&#xff1a; template <class> // determine whether type argument is an array bool is_array_v false;template <class _Ty, size_t _Nx> bool is_array_v<_Ty[_Nx]> true;template <class _Ty>…

屏蔽罩材质和厚度对屏蔽效能的影响

​ 一&#xff0e;屏蔽效能的影响因素 屏蔽效能的影响因素主要有两个方面&#xff1a;屏蔽材料的特性和厚度&#xff1b;如下图所示&#xff0c;电磁波经过不同媒介时&#xff0c;会在分界面形成反射&#xff0c;穿过界面的电磁波一部分被反射回去&#xff0c;这部分能量损失…

nginx--反向代理

反向代理 指的是代理外网用户的请求到内部的指定web服务器器&#xff0c;并将数据返回给用户的一种方式&#xff0c;这是用的比较多的一种方式 模块和功能 ngx_http_proxy_module&#xff1a; 将客户端的请求以http协议转发至指定服务器进行处理。ngx_stream_proxy_module&…

自学错误合集--MessageSource国际化接口

java后端自学错误总结 一.MessageSource国际化接口总结 一.MessageSource国际化接口 今天第一次使用MessageSource接口,比较意外遇到了一些坑 messageSource是spring中的转换消息接口&#xff0c;提供了国际化信息的能力。MessageSource用于解析 消息&#xff0c;并支持消息的…

hadoop启动后没有namenode,datanode等解决方法

之前用的是虚拟机&#xff0c;在虚拟机上安装的hadoop&#xff0c;但是后来&#xff0c;电脑恢复出厂设置了&#xff0c;什么都重新开始。就在本地安装 Linux 子系统。 但是&#xff0c;有时候start-dfs.sh后&#xff0c;jps出现错误。 像这种拒绝连接 解决办法就是如下&…

智慧隧道建设中,如何提升隧道广播清晰度,解决隧道广播有效发布问题

近年来&#xff0c;我国高速公路智慧隧道建设步伐加快&#xff0c;全国各地高速公路运营单位纷纷加大投资力度&#xff0c;进行智慧隧道建设&#xff0c;提高隧道智能化水平。通过高清视频监控、AI视频识别、雷视融合、全域轨迹、激光雷达、火灾报警、气体检测、亮度检测、自动…

倪海厦(二)以果决其行,放空自己。

研究任何学问&#xff08;事物&#xff09;&#xff0c;批判去看&#xff0c;假设--验证--结果。以果决其行&#xff01;&#xff01;&#xff01;放空自己。学而后思&#xff0c;思学并进。 其实总结下来&#xff0c;也正如倪老师所说&#xff0c;以果决其行&#xff0c;我们…

STM32F1之FLASH闪存

目录 1. 简介 2. 闪存模块组织 3. FLASH基本结构 4. FLASH解锁 5. 使用指针访问存储器 6. 程序存储器全擦除 7. 程序存储器页擦除 8. 程序存储器编程 9. 选项字节 1. 简介 STM32F1系列的FLASH包含程序存储器、系统存储器和选项字节三个部分&#xff0c;通过…

第 129 场 LeetCode 双周赛题解

A 构造相同颜色的正方形 枚举&#xff1a;枚举每个 3 3 3\times 3 33的矩阵&#xff0c;判断是否满足条件 class Solution {public:bool canMakeSquare(vector<vector<char>>& grid) {for (int i 0; i < 2; i)for (int j 0; j < 2; j) {int c1 0, c…

一款 NodeJS 版本管理工具 NVM (Windows)

一、简介 Node Version Manager&#xff08;NVM&#xff09;是一种用于管理多个 NodeJS 版本的工具。在日常工作中&#xff0c;我们可能同时在进行多个不同的项目开发&#xff0c;每个项目的需求不同&#xff0c;依赖与不同版本的NodeJS 运行环境。这种情况下&#xff0c;维护…

通过DataGrip将mysql表结构信息转存excel 复制select结果的insert插入语句

各位小伙伴们大家好&#xff0c;欢迎来到这个小扎扎的专栏 总结 | 提效 | 拓展&#xff0c;在这个系列专栏中记录了博主在学习期间总结的大块知识点&#xff0c;以及日常工作中遇到的各种技术点 ┗|&#xff40;O′|┛ &#x1f306; 内容速览 1 查询表结构信息&#xff0c;并…

巴菲特称AI与核武器一样可怕,并调侃AI诈骗可能成下一个增长产业|钛媒体AGI | 最新快讯

总的来看&#xff0c;巴菲特对于 AI 有所知晓&#xff0c;希望它能够是件好事&#xff0c;而且认为AI会颠覆和改变这个世界&#xff0c;但是他并不是很了解&#xff0c;也言下之意表示&#xff0c;他并不会在 AI 领域进行投资。 &#xff08;图片来源&#xff1a;由 AI 生成的巴…

C++中的内存管理(上)

一、C中的内存分布 我们先来看下下面的代码&#xff1a; int globalvar 1; static int staticGlobalvar 1; void test() {static int staticVar 1;int localvar 1;int num1[10] { 1, 3, 2, 4 };char char2[] "abcd";const char* pChar3 "abcd";in…

常见的零拷贝技术

传统IO 基于传统的IO方式&#xff0c;底层实际上通过调用read()和write()来实现。通过read()把数据从硬盘读取到内核缓冲区&#xff0c;再复制到用户缓冲区&#xff1b;然后再通过write()写入到socket缓冲区&#xff0c;最后写入网卡设备。整个过程发生了4次用户态和内核态的上…

【前端开发---Vue2】史上最详细的Vue入门教程(五) --- 细讲‘生命周期’

什么时候可以发送初始化渲染请求&#xff1f;&#xff08;越早越好&#xff09;什么时候可以开始操作dom&#xff1f;&#xff08;至少dom得渲染出来&#xff09;&#xff0c;本篇将详细讲解vue中的核心 --- 生命周期&#xff0c;并提供具体案例来让小伙伴们加深理解、彻底掌握…

# 从浅入深 学习 SpringCloud 微服务架构(九)

从浅入深 学习 SpringCloud 微服务架构&#xff08;九&#xff09; 一、微服务网关引入 1、在微服务架构中&#xff0c;不同的微服务一般会有不同的网络地址&#xff0c; 如果让客户端直接与各个微服务通讯&#xff0c;可能会有很多问题&#xff0c;如&#xff1a; 1&#…