主生产计划的功能以及其相关MRP类型参数
主生產計劃實際相當于一個計劃調節器,用主生產計劃可以合理的調節企業資源配置與需求的矛盾,避免由于需求不穩定造成的產品未能按期交貨,產品積壓,資源浪費、超負荷運轉等現象,提高企業對用戶的服務水平。
一般MPS的計劃對象為最終產品或者關鍵重要部件,有時候也會對原材料做計劃,比如造船行業。原料品種比較少而產品品種比較多。
在SAP系統,和MPS相關的MRP類型有:
M0 MPS,固定類型 -0-
M1 MPS,固定方式 -1-
M2 MPS,固定方式 -2-
M3 MPS,固定方式 -3-
M4 MPS,固定方式 -4-
到后臺去看這些參數的配置,發現只有確定的類型(Firming Tpyes)一個值不一樣
0 計劃結果未被確認
??????????? 1 自動確定和訂購建議被重新計劃
????? 2 不含訂購建議的自動確定
??????? 3 手工確定和訂單建議再計劃
??? 4 手工確定不含訂單建議
為了弄清楚上面每個確定類型的含義,需要看下面的圖:
在時區1、2,某時刻到計劃時界這個區間內計劃訂單是否被確定,新的需求的是否創建以及創建的落點在那個區間,由這個確定類型參數確定,下面是它的詳細解釋。
tpye0 :需求不自動確定,新的需求在需求日期創建,不會自動確定(計劃時界內外都一樣)。
tpye1 :需求自動確定,新的需求如果日期在計劃時界內,那么在計劃時界結束的位置創建需求。
type2 :需求自動確定,計劃時界內的新需求不被考慮,缺料。
tpye3 :需求不自動確定,新的需求如果日期在計劃時界內,那么在計劃時界結束的位置創建需求。
tpye4 :需求不自動確定,計劃世界內的新需求不被考慮,缺料。
PS:確定的需求,即不能再更改其數量。
MRP運行方式
概括的說可以對兩個組織層次執行計劃運行:1、總的計劃 2、單項計劃
·作為一個特定工廠的總計劃運行。在此,在一個工廠中與計劃相關的所有物料被計劃。
·作為一個特定物料的單項計劃。在此,計劃運行為一個特定的物料在單層或者在多層中執行。
總計劃運行的方式又可以細分為兩種:A、前臺運行 B、后臺運行;單項計劃又可以細分為單層多層等更為細致的計劃,在單層計劃中,系統僅計劃所選物料的BOM層,在多層計劃中,系統計劃所選物料的層次加上所有較低的BOM層。
系統對應的路徑為:后勤->生產->物料需求計劃->計劃->總計劃->聯機/作為后臺作業(Logistics->Production->MRP->Planning->Total Planning->Online/As Backgroud)
聯機就是前臺運行整體計劃,事物代碼為MD01,指程序在客戶端運行,如果客戶機死機則程序中斷。作為后臺作業即是后臺運行程序,事物代碼為MDBT,程序在服務器端運行,客戶端最終讀取結果即可,不受客戶端影響。
單項計劃的路徑: 后勤->生產->物料需求計劃->計劃->單項多層/單項單層/單項交互/單項銷售訂單/單項項目(Logistics->Production->MRP->Planning->Single-Item Multi-level/Single-Item Single-level/Single-Item Interactive/Single-Item Sales order/Single-Item Project)
它們的事物碼分別為:單項多層MD02 單項單層MD03 單項交互MD43 單項銷售訂單MD50 單項項目MD51
MRP運行的先決條件
對于工廠是否跑MRP取決兩個條件:1、工廠MRP狀態是否激活。2、計劃文件是否創建。
工廠MRP狀態激活和計劃文件創建可以通過路徑SAP用戶化實施指南->生產->物料需求計劃->計劃文件條目->激活MRP和建立計劃相關文件(SAP Customizing Implementation Guide->Production->Material Requirement Plannning->Planning File Entries->Activate MRP and Set Up Planning File)
進入如下畫面
選擇material requirements planning 勾選相應的工廠即激活此工廠MRP狀態
選擇Set up planning file 創建計劃文件,計劃文件除了后臺可以設置外,在MRP運行時選擇處理碼NEPUL,系統可自動創建計劃文件。
對于物料是否跑MRP,取決于物料選擇的MRP類型參數,以及物料的狀態是否有效。
客制化MRP參數的優先級別
MRP運行時數據讀取順序是首先讀物料主數據的MPR參數,然后讀取MRP組的參數,最后讀取工廠參數。通過這樣一種有層次的架構,滿足差異化的計劃方法,以及方便數據維護。
MRP的運算邏輯及低階碼的用途
一般MRP的運算邏輯為由最終產品的毛需求減去當前庫存,得到凈需求,由凈需求、提前期、安全庫存等信息推算出實際投產日期和實際數量(凈需求);由本級物料的凈需求及BOM結構的數量比關系計算出下一級物料的毛需求,再由毛需求和當前庫存信息,計算得到凈需求??依次循環,直到不再有下層物料為止.
但是這樣一種邏輯當遇到共用件的時候會出現問題。比如甲產品有組件A(1)、B(2)、C(1);乙產品有組件A(1)、D(2),D的組件為B
如果甲和乙各有獨立需求100,那么按照甲展開,B的毛需求應該為200,減去庫存值50(假設),得到凈需求為150;按照乙展開,假設D的毛需求等于凈需求,那么可以計算出B的毛需求的為200,但是這個時候還需要再減去庫存值50嗎,很顯然不應該減,但是按照上述邏輯可能計算出乙中B組件的凈需求為150,那么總的凈需求就為300,而實際的凈需求應該是350。為了避免這種錯誤在BOM存在共用件的時候發生,引入了階層碼和低階碼的概念。
從最終產品到原材料,給BOM結構的每一個層次分配一個階層碼,MRP運算的順序為上圖箭頭順序,當物料階層碼為最低的時候,再累加毛需求,計算凈需求。比如物料B有兩個階層碼,當運算到階層碼002,B的最低階層碼時,累加毛需求再計算凈需求。運算過程如下表:
| 步驟 | 計劃物料 | 毛需求 | 可用庫存 | 凈需求 | BOM下階組件毛需求 | |
| 1 | 甲 | 100 | 0 | 100 | A | 100 |
| 2 | 乙 | 100 | 0 | 100 | A | 100 |
| 3 | A | 100+100 | 30 | 170 | - | - |
| 4 | C | 100 | 20 | 80 | - | - |
| 5 | D | 200 | 0 | 200 | B | 200 |
| 6 | B | 200+200 | 50 | 350 | - | - |
?
只有當物料的階層碼為最低階層碼的時候,系統才扣除當前庫存,計算物料的凈需求。
PS:為了避免人為分配錯誤導致MRP運算無法運行,階層碼由SAP系統在創建BOM時自動檢索分配,數位為3位,所以BOM的最高層次也只能為999層。
SAP PP MD02界面參數說明
處理代碼:
NETCH -凈變化計劃,即只計劃上次計劃以后計劃相關內容發生變動的物料(注意,某些物料的參數發生變動了,系統也認為計劃內容沒有發生變動)。
NETPL – 計劃周期內的凈變化計劃,即只在計劃周期內執行凈變化計劃,周期外將不進行計劃。
跟mrp相關的變化在planing horizon中,即由物料主檔的MRP1視圖的計劃的時界,超出計劃時界的將不進行計劃。
NEUPL – 重新計劃,所有的物料不管有沒有變動都再次計劃。
只要速度可以,建議每次都選NEUPL(注意某些單項計劃不能選擇NEUPL),其次選NETCH。
說明情況:有的物料在用MD01時的NETCH的物料計劃單不會重新產生那是因為NETCH只運算物料計劃發生變化了的物料,因此要用MD01讓所有物料的計劃單重新產生,一定要用參數NEUPL;而用MD02時的NETCH會重新產生物料計劃單。
創建采購申請:
1-計劃結果直接生成采購申請;2-只在未清期間內生成采購申請,未清期間外生成計劃訂單;3-全部生成計劃訂單;
交貨計劃表:
如果MM模塊啟用了計劃行,則MRP運行的結果如下處理:1-不生成計劃行;2-只有在未清期間內生成計劃行; 3 – 全部生成計劃行;
創建MRP清單:
設置MRP運算是否更新MRP清單;1-不生成/更新;2-根據例外信息決定;3-全部更新/生成MRP清單;
計劃模式:
1-不清空原先的計劃訂單;2-不清空,但是要重新展開他們的Bom和工藝路線(即按照最新的Bom和工藝路線計劃);3-全部清空未確認的計劃訂單,重新生成。
調度:
1-按物料主數據的提前期進行排產;
2- 按工藝路線進行排產;
這是運算MRP時的參數選擇描述,在創建采購申請 項目中選擇1就可以了,不用到后臺.
Ps: 未清期間:簡單的說就是為計劃員提供了一個提前處理的緩沖期。在逆推排產的邏輯下,比如MRP創建的計劃訂單開始日期是5日,未清期間是3天,那么假如當前日期是1日,就還沒有進入未清期間,此時計劃員就沒必要這么早處理計劃訂單,而如果當前日期是3日,就在未清期間里了,此時在MD04中會有一個例外消息05產生,用來提示計劃員可以去將這張計劃訂單轉換成生產訂單或者采購申請了,這樣就可以給計劃員充分的時間來處理訂單。如果沒有未清期間,直到5日都不會有任何提醒,到時候再來處理就有可能來不及了。
mrp控制參數及未清期間
MRP Control Parameters & Opening Period
——–mrp控制參數及未清期間
經常有人對MRP/MPS運行界面上的參數選擇迷糊, 特整理說明如下.
Processing key :
NETCH (凈變化計劃):即只計劃上次計劃以后計劃相關內容發生變動的物料(注意,某些物料的參數發生變動了,系統也認為計劃內容沒有發生變動)
NETPL(計劃周期內的凈變化計劃):即只在計劃周期內執行凈變化計劃,周期外將不進行計劃.
NEUPL(重新計劃)所有的物料不管有沒有變動都再次計劃. 如果沒有Performance的考量,建議每次都選NEUPL(注意某些單項計劃不能選擇NEUPL),其次選NETCH.
Create Purchase req.(創建采購申請):
1:計劃結果直接生成采購申請(PR);
2:只在未清期間內生成采購申請(PR),未清期間外生成計劃訂單(Planned Order);
3:全部生成計劃訂單(Planned Order).
Delivery Schedule(交貨計劃表):如果MM模塊啟用了計劃行(Schedule Line),則MRP結果如下處理:
1:不生成計劃行(Schedule Line);
2:只有在未清期間內生成計劃行(Schedule Line);
3:全部生成計劃行(Schedule Line);
Create MRP List(創建MRP清單):設置MRP運算是否更新MRP清單(MRP List):
1:不生成/更新
2:根據例外信息決定
3:全部更新/生成MRP清單(MRP List)
Planning Mode(計劃模式):
1:不清空原先的計劃訂單(Planned Order);
2:不清空,但是要重新展開他們的BOM和Routing(即按照最新的BOM和Routing);
3:全部清空未確認的計劃訂單(Planned Order),重新生成.
Scheduling(調度):
1:按物料主數據的提前期(Lead Time)進行排產
2:按工藝路線(Routing)進行排產
==================================================
上面有提到Opening Period(未清期間) , 所以就再轉個帖子說明.
跑MRP的時候,就“創建采購申請”有三種選擇,1全為采購申請,2未清期間的采購申請,3全為計劃訂單.“未清期間”在“計劃邊際碼”中設定(Sched Margin key, IMG:Production -> MRP -> Plan -> 計劃和生產參數 -> 定義浮點),其解釋為:
The number of working days between the date that the order is created and the planned start date. This time is available for the MRP controller to convert a planned order into a purchase requisition or a production order.
也就是計劃訂單轉采購申請/生產訂單的提前時間.
以下是個例子,今天是2006/06/13,物料A的需求日期2006/07/02,計劃交貨時間12天,收貨處理時間1天.當未清期間設為5天的時候,如圖:
注意到訂單收貨開始日期到完成日期,共12天(不含本日).計劃轉換日期2006/06/14,正好跟訂單開始日期相隔5天(也不含本日),這就是“未清期間”.
如果未清期間設為6天,由于計劃轉換日期為當天(或者說運行MRP的日期,落在計劃訂單的未清期間內),因此計劃訂單已經自動轉化為采購申請.
未清期間的作用在于:在計劃和采購申請/生產訂單間提供一個緩沖的時間.這跟下達時間作用相仿,因此它們都在計劃邊際碼中維護.計劃員可以對落在未清期間的計劃訂單進行批量轉換(MD15/CO41)
SAP PP MRP視圖中重要欄位的意義及功能作用
1.MRP4視圖中的獨立/集中:
???????? 1--獨立,就是已經制定成本分配對象的,尤其是掛靠在銷售訂單上的,如果是make-to-order。該物料一入庫就直奔對象而去--好比特等艙。我的理解:這種方式可以找到唯一的一個源需求。比如上級跟單,則本級也會跟單;上級不跟單,本級也不跟單但可以用需求追溯的方式找到源需求。這種物料的需求計劃單是不會合并的。
???????? 2--集中,就是沒有制定成本分配對象的,那么這樣的物料需要去倉庫中轉了,也就是需要入庫-出庫步驟。大多數的物料需要維護成2,因為需要倉庫管理的。我的理解:這種方式一般不可以找到唯一的一個源需求,這種物料的需求計劃單是會合并的。比如上級跟單,但本級不會跟單;上級不跟單,本級也不跟單但可以用需求追溯的方式找到源需求且此源需求為多個。
簡單地講,1--就是采購的時候就知道用在何處的,而且是不可更改對象的。而2是可以半路指定的,通過發料等。
補充說明:關于物料是否跟單,不是完全由策略組決定的,大都是由此項決定的,如果是選1--獨立,只是上級是跟單,則不管策略組是否跟單,本級都跟單。
2.計劃邊際碼
未清期間:簡單的說就是為計劃員提供了一個提前處理的緩沖期。在逆推排產的邏輯下,比如MRP創建的計劃訂單開始日期是5日,未清期間是3天,那么假如當前日期是1日,就還沒有進入未清期間,此時計劃員就沒必要這么早處理計劃訂單,而如果當前日期是3日,就在未清期間里了,此時在MD04中會有一個例外消息05產生,用來提示計劃員可以去將這張計劃訂單轉換成生產訂單或者采購申請了,這樣就可以給計劃員充分的時間來處理訂單。如果沒有未清期間,直到5日都不會有任何提醒,到時候再來處理就有可能來不及了。
產前、產后緩沖時間:就是有些產品生產的時間可能不一定按設定的那樣準確,允許生產前或后有一定的浮動,比如產前2天,產后1天,這樣自制生產時間為2天的產品,只要在5天內生產出來都是允許的。這個字段的設置是要根據實際生產情況的,但是感覺真正會用的企業不太多。
下達期間:如果沒有下達期間,那么系統計劃的下達日期就是訂單的計劃開工日期,也就是說計劃員剛下達就必須開始生產了,而如果設置了2天,那么計劃員就可以提前2天下達,車間接到下達的訂單就可以有一定的提前準備時間。
這些字段都沒有什么限制作用,只是給計劃一些靈活性和容余罷了。
至于向前和向后消耗,那是計劃獨立需求如何被銷售訂單沖減的概念了,跟計劃邊際碼沒關系。比如消耗模式是向后消耗5天,那么假設預測的獨立需求是10日要生產100,如果在12日接到一個40的銷售訂單,也可以當作預測準了,那么未完成的預測就只有60了。類似的向前消耗,就是實際訂單如果早于預測日期,是否也可以認為是預測準了,可以沖減預測。因此消耗模式都要和逆向消耗期間或向前消耗期間搭配使用,以確定與預測日期相差多少天內的訂單都可認為是預測的數量得到了實現。
總結
以上是生活随笔為你收集整理的主生产计划的功能以及其相关MRP类型参数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 会计档案保管期限
- 下一篇: KIS科目初始数据录入