MRP 是什麼?物料需求規劃怎麼算、BOM 與安全庫存怎麼設,以及跟 ERP、MES 的分工

恆遠數位編輯團隊約 15 分鐘閱讀
MRP 物料需求規劃封面:買多少、哪週下單,3 層 BOM 算例看懂淨需求與前置時間
複製引文

MRP 是物料需求規劃(Material Requirements Planning),一套從「成品哪一週要交多少」倒推「每顆零件要買多少、哪一週下單」的計算方法。它跟商品標籤上那個建議售價 MRP(Maximum Retail Price)同名但無關,這篇講的是工廠生管、採購每天在用的那一個。

我們在做營運系統的需求訪談時,生管和採購最常講的一句話是:「公式我都懂,難的是資料每天在變。」MRP 的算法本身不難,五個數字加一張 BOM 就能算;真正會讓工廠頭痛的,是料號亂、BOM 沒人維護、前置時間全憑採購記憶。這篇先把算法用一個完整算例講清楚,再談 Excel 撐到哪裡會崩,以及要系統化時有哪三條路。

讀者如果是中小製造業老闆、生管或採購,看完應該能自己判斷三件事:公司現在需不需要 MRP、Excel 還撐得住多久、要上系統的話該從 ERP 模組、獨立工具還是客製開發下手。

MRP 是什麼?物料需求規劃一句話講完

一句話:MRP 把「成品需求」沿著 BOM 往下拆,扣掉手上和路上的庫存,再依前置時間往前推,算出每顆料的下單數量和下單時間。

這套方法有六十年歷史。Wikipedia 的 MRP 條目整理得很清楚:1964 年美國 Black & Decker 用 IBM 1401 跑出第一套實用的 MRP,1975 年 Joseph Orlicky 出版《Material Requirements Planning》後在製造業普及,1983 年 Oliver Wight 再把產能規劃、主排程納進來,變成 MRP II。今天每一套 ERP 的生產模組,核心邏輯都還是這一套。

先給一張速覽表,三十秒拿到這篇的重點:

問題

簡單答案

MRP 在算什麼

每顆料要買(或做)多少、哪一週下單

需要哪些輸入

主生產排程、BOM、庫存與在途量、安全庫存、前置時間

核心公式

淨需求 = 毛需求 + 安全庫存 − 期初在庫 − 在途收料(小於 0 就不用買)

什麼工廠需要

產品有多層零組件、料號超過幾百個、常常缺料或囤料的組裝型工廠

Excel 撐得住嗎

單一成品、兩層 BOM、料號百個以內還可以;多產品共用料就開始出錯

跟 ERP 的關係

MRP 是 ERP 生產模組的計算核心,ERP 還多了財務、銷售、採購單據

跟 MES 的關係

MRP 算計畫(該做什麼),MES 管現場(做得怎樣)

導入前先做什麼

料號整理、BOM 校正、前置時間實測,這三件沒做好系統也算不準

如果你還在想 ERP 整體要怎麼挑,可以先看企業 ERP 選型完整指南;這篇只聚焦 MRP 這顆計算引擎。

MRP 計算邏輯:五個數字決定買多少、何時下單

先講結論:每顆料、每一週,MRP 都只問兩個問題。這週的需求,手上的量夠不夠?不夠的話,要提早幾週下單才來得及?

要回答這兩題,需要五個數字:

數字

白話意思

從哪裡來

填錯會怎樣

毛需求

這週總共要用掉多少

成品看訂單或主排程;零件看上一層的下單量 × BOM 用量

整條鏈往下全部算錯

期初在庫

倉庫裡現在真的有多少

庫存帳(要扣掉已被別張工單保留的量)

帳上有、倉庫沒有,產線停工

在途收料

已經下單、還沒到的量

未結案的採購單與工單

重複下單,囤一堆料

安全庫存

平常不准動用的緩衝量

依用量波動和交期不穩程度設定

設太低常斷料,設太高壓資金

前置時間

從下單到可以用要幾週

供應商交期加上進料檢驗、自製件的加工天數

下單太晚來不及,太早占倉位

計算順序:由上往下一層一層拆

MRP 一定從最上層的成品開始算,算出成品的「計畫下單量」之後,這個數字乘上 BOM 用量,就變成下一層零件的毛需求。下一層算完,再往更下一層丟。所以一顆最底層的原料,要等它上面每一層都算完才知道自己要多少。

每一週的計算都是同一套流程:預計在庫 = 上週期末在庫 + 本週在途收料 + 本週計畫收料 − 本週毛需求。如果算出來會低於安全庫存,差額就是淨需求,系統依批量規則湊成一張計畫訂單,再往前推一個前置時間,那一週就是該下單的時間。

圖表載入中…

這個「每天、每週重算一次可用量」的邏輯,在很多營運系統裡都會出現。我們做過同型的營運系統:影視器材租賃與檔期系統的即時可用量引擎,就是把每一天的可租量算成「總量 − 當日維修 − 報廢 − 已預訂 − 外調」,排單前先抓出撞期。換成工廠的語言,就是 MRP 的預計在庫。如果你們現在也是靠 Excel 加人腦在排料,想先聊聊流程適不適合系統化,可以直接加 LINE 跟我們聊。

MRP 算例:一台推車第 6 週要交貨,鋼管第 2 週就得下單

用一個 3 層 BOM 實際算一次。假設一家工廠做小型手推車,客戶訂單是第 6 週要 100 台、第 8 週要 150 台,今天是第 1 週。BOM 和各料的庫存條件如下:

圖表載入中…

料號

層級

每個上層用量

前置時間

期初在庫

在途收料

安全庫存

批量規則

A 手推車

0

(成品)

1 週

20

無

0

缺多少做多少

B 車架組

1

每台 A 用 1 組

1 週

30

無

0

缺多少做多少

C 輪子

1

每台 A 用 4 個

2 週

200

第 3 週到 100

50

整箱 100 個為單位

D 鋼管

2

每組 B 用 3 支

2 週

60

無

30

缺多少買多少

第 0 層:手推車 A

第 6 週要 100 台,手上有 20 台,淨需求 80 台,組裝要 1 週,所以第 5 週開工 80 台。第 6 週出貨後在庫歸零,第 8 週的 150 台全部要做,第 7 週開工。

項目

第 1 週

第 2 週

第 3 週

第 4 週

第 5 週

第 6 週

第 7 週

第 8 週

毛需求

0

0

0

0

0

100

0

150

預計在庫(期末)

20

20

20

20

20

0

0

0

淨需求

0

0

0

0

0

80

0

150

計畫收料

0

0

0

0

0

80

0

150

計畫下單

0

0

0

0

80

0

150

0

第 1 層:車架組 B 與輪子 C

A 的計畫下單量(第 5 週 80、第 7 週 150)就是 B 的毛需求。B 手上有 30 組,第 5 週淨需求 50 組,焊接 1 週,第 4 週開工;第 7 週的 150 組在第 6 週開工。

項目

第 1 週

第 2 週

第 3 週

第 4 週

第 5 週

第 6 週

第 7 週

第 8 週

毛需求

0

0

0

0

80

0

150

0

預計在庫(期末)

30

30

30

30

0

0

0

0

淨需求

0

0

0

0

50

0

150

0

計畫收料

0

0

0

0

50

0

150

0

計畫下單

0

0

0

50

0

150

0

0

輪子 C 每台用 4 個,所以毛需求是第 5 週 320 個、第 7 週 600 個。它有三個條件要一起看:在途 100 個第 3 週到、安全庫存 50 個、只能整箱 100 個買。

  • 第 5 週:期初 300 個(200 加第 3 週到的 100),要用 320 個,還要留 50 個安全庫存,淨需求 = 320 + 50 − 300 = 70 個。整箱湊成 100 個,期末剩 300 + 100 − 320 = 80 個。
  • 第 7 週:期初 80 個,要用 600 個,淨需求 = 600 + 50 − 80 = 570 個,整箱湊成 600 個,期末剩 80 + 600 − 600 = 80 個。
  • 交期 2 週,所以第 3 週下 100 個、第 5 週下 600 個。

項目

第 1 週

第 2 週

第 3 週

第 4 週

第 5 週

第 6 週

第 7 週

第 8 週

毛需求

0

0

0

0

320

0

600

0

在途收料

0

0

100

0

0

0

0

0

預計在庫(期末)

200

200

300

300

80

80

80

80

淨需求

0

0

0

0

70

0

570

0

計畫收料

0

0

0

0

100

0

600

0

計畫下單

0

0

100

0

600

0

0

0

第 2 層:鋼管 D

鋼管的毛需求來自 B 的計畫下單量乘 3:第 4 週 150 支、第 6 週 450 支。手上 60 支、安全庫存 30 支,第 4 週淨需求 = 150 + 30 − 60 = 120 支;第 6 週期初剩 30 支,淨需求 = 450 + 30 − 30 = 450 支。交期 2 週,所以第 2 週就要下 120 支、第 4 週下 450 支。

項目

第 1 週

第 2 週

第 3 週

第 4 週

第 5 週

第 6 週

第 7 週

第 8 週

毛需求

0

0

0

150

0

450

0

0

預計在庫(期末)

60

60

60

30

30

30

30

30

淨需求

0

0

0

120

0

450

0

0

計畫收料

0

0

0

120

0

450

0

0

計畫下單

0

120

0

450

0

0

0

0

算完之後要看的三件事

料號

要下的單

最早一張單的下單週

離今天還有幾週

A 手推車(工單)

第 5 週 80 台、第 7 週 150 台

第 5 週

4 週

B 車架組(工單)

第 4 週 50 組、第 6 週 150 組

第 4 週

3 週

C 輪子(採購單)

第 3 週 100 個、第 5 週 600 個

第 3 週

2 週

D 鋼管(採購單)

第 2 週 120 支、第 4 週 450 支

第 2 週

1 週

第一,越底層的料,下單時間越早。成品第 6 週才交,最底層的鋼管下週就得下單,生管如果等到第 4 週才想起來,就一定斷料。第二,安全庫存和整箱批量會讓「實際買的量」跟「實際用的量」不一樣,輪子總共買了 700 個、用了 920 個,差額由期初庫存和在途補上,最後還留 80 個。第三,只要上層任何一個數字變了(客戶把第 8 週改成 200 台),下面三層的數字要全部重算一次。

第三點就是 MRP 需要系統的根本理由。這個算例只有 4 個料號、8 週,人工算一次大概十五分鐘;真實工廠是幾百到幾千個料號、幾十個成品共用零件,每天訂單都在變。

MRP 的安全庫存和前置時間怎麼設才不會算歪

先講結論:安全庫存只給「交期不穩或用量波動大」的料,前置時間用最近半年的實際交貨天數來填,不要用供應商報價單上寫的天數。

安全庫存的三種設法

設法

怎麼算

適合哪種料

缺點

固定天數

平均日用量 × 緩衝天數(例如 5 天)

用量穩定的通用料、包材

淡旺季差很多時會失準

依交期波動

(最長交期 − 平均交期)× 平均日用量

交期常延誤的進口料、外包加工件

要有半年以上的交貨紀錄

統計公式

服務水準係數 × 需求標準差 × √前置時間

料號多、有完整歷史資料的工廠

資料不夠時算出來的數字沒有意義

我們的看法很直接:中小工廠一開始用前兩種就夠了。統計公式看起來專業,但它吃的是乾淨的歷史用量,資料髒的時候算出來只是一個精確的錯誤數字。安全庫存也不需要每顆料都設,A 類(金額高、用量大)和交期長的料先設,便宜的螺絲螺帽用整箱批量反而更省事。

前置時間要拆成三段

採購件的前置時間 = 下單到供應商出貨 + 運送 + 進料檢驗入庫。很多工廠只填第一段,結果系統建議的下單日每次都晚兩三天。自製件則是排隊等機台的時間加上實際加工時間,前面那段常常比加工時間還長,這部分要靠現場報工資料才抓得準。安全庫存設定與庫存功能的細節,庫存管理系統怎麼選那篇有整理一張對照表。

MRP、MRP II、ERP、MES、APS 差在哪?分工對照表

一句話分工:MRP 算料,MRP II 加上產能,ERP 把財務和業務也包進來,APS 把排程排到機台與分鐘,MES 管現場實際做了什麼。

系統

回答的問題

時間尺度

主要使用者

跟 MRP 的關係

MRP

每顆料要買多少、哪週下單

週或天

生管、採購

本體

MRP II

料夠了,產能也夠嗎

週

生管主管、廠長

MRP 加上產能需求規劃與主排程

ERP

訂單、採購、庫存、帳務能不能串成一條線

天到月

全公司

MRP 是 ERP 生產模組裡的計算核心

APS

哪張工單排在哪台機器、幾點開始

小時到分鐘

排程人員

吃 MRP 算出來的工單,做有限產能排程

MES

現場實際做了多少、良率多少、卡在哪

即時

產線主管、作業員

回報完工數與耗料,讓 MRP 下一輪的在庫數字是真的

最常被搞混的是 MRP 和 APS。MRP 預設產能無限,只要料到了就當作做得出來;APS 才會看機台和人力是不是真的排得下。如果你的工廠是料常常不缺、但機台永遠排不過來,要先看的是客製化 APS 先進排程系統,MRP 幫不上忙。三套製造系統之間的資料怎麼接,ERP、MES、QMS 差在哪和製造業內部系統開發指南都有拆過;要往現場管理走,可以接著看客製化 MES 製造執行系統開發指南。

用 Excel 算 MRP,通常在這五個地方崩掉

Excel 算 MRP 完全可行,前面那個算例在 Excel 裡一個下午就能做出來。問題出在規模變大之後。試算表本來就容易藏錯:夏威夷大學 Raymond Panko 研究試算表錯誤多年,The New Republic 整理過他的統合分析,結論是大多數被稽核過的試算表都有實質錯誤,而且越大的表藏越多。MRP 剛好是那種「一格錯、整條鏈跟著錯」的表。

崩潰點

現場會看到什麼

為什麼 Excel 處理不好

共用料

兩個成品都用同一顆螺絲,各算各的,加總時漏掉一邊

跨工作表加總靠人工維護公式,產品一多就漏

BOM 改版

工程改了用量,採購還在用舊版算

Excel 沒有版本與生效日,舊 BOM 和新 BOM 混在一起

在途與保留量

帳上有料,其實已經被另一張工單保留

保留量要從工單系統抓,手動貼上就會晚一天

多人同時改

生管改需求、採購改交期,存檔時互相覆蓋

共用檔案沒有欄位層級的權限與紀錄

每天重算

訂單一變,四層 BOM 要從頭重算一次

重算靠人按、靠人貼,忙的時候就跳過

自己判斷的方法很簡單:上面五項中了三項,或是每週花在「對料」的時間超過一個工作天,Excel 就已經在拖累交期了。想先用低成本工具撐一段時間的話,進銷存自己做完整指南比較了 Excel、Airtable、Notion 各自能撐到哪;預算是主要顧慮,ERP 太貴的 5 條替代路徑也值得一看。

MRP 系統化的三條路:ERP 內建模組、獨立 MRP 工具、客製開發

先講結論:已經有 ERP 或正要導 ERP 的,先用 ERP 內建的 MRP 模組;只缺算料、其他流程都還簡單的,用獨立 MRP 工具;流程特殊到套裝改不動,或是要跟現有系統深度串接的,才考慮客製。

路線

代表做法

適合誰

要注意的地方

ERP 內建 MRP 模組

鼎新、正航、SAP Business One、Odoo 製造模組、ERPNext

已有 ERP,或採購、財務也要一起整合的工廠

模組常要另外加購;BOM 與庫存要先在 ERP 裡建乾淨

獨立 MRP 工具

雲端 MRP SaaS、進銷存附帶的簡易算料功能

幾十人規模、產品線單純、只想先解決缺料

跟會計、訂單系統要手動或用 API 串;多廠多倉支援有限

客製開發

依現有流程寫算料引擎,串接既有 ERP、MES 或訂單系統

BOM 結構特殊(配方、選配、副產品),或套裝改不動

需求要寫清楚;要有人長期維護計算規則

開源 ERP 的做法可以先參考:ERPNext 的 MRP 文件與Odoo 製造模組文件都把「依銷售訂單或預測產生物料需求」寫成標準流程,拿來對照自家流程差多少很好用。各家 ERP 生產模組怎麼比,製造業 ERP 怎麼選:工單、BOM、生產排程有逐項拆;套裝跟流程對不上的徵兆,現成 ERP 為什麼總是不符需求整理了判斷表。

我們不建議一開始就客製 MRP

這句話由一個做客製系統的團隊來講,聽起來有點奇怪,但理由很實際。MRP 的計算邏輯六十年來幾乎沒變,套裝軟體已經把它做得很成熟,自己重寫一次算料引擎通常不划算。客製真正值得花錢的地方,在 MRP 的「前後」:訂單怎麼自動變成主排程、現場報工怎麼回寫庫存、BOM 改版怎麼同步到採購。這些才是每家工廠流程不一樣的地方。

我們做過同型的營運系統,例如替製造業客戶做的生產力管理系統,處理的是生產可見性、異常管理與產能效益分析,就是 MRP 算完之後「現場實際做得怎樣」那一段。如果你們卡在 MRP 前後的資料銜接,我們很樂意先聽你聊聊現況,一起看看哪一段最值得先動。

導入 MRP 前,先把這三份資料整理好

一句話:MRP 是一台很精準的計算機,資料錯它就精準地算錯。不管走哪條路,下面三份資料沒整理好就上線,系統建議的下單量沒人敢用,最後大家又回去開 Excel。

資料

要整理到什麼程度

常見問題

誰負責

料號主檔

一個實體料只有一個料號;單位、採購單位、換算比例都填齊

同一顆料有三個料號、單位一下用「個」一下用「盒」

倉管加採購

BOM

每個成品都有正確的用量、損耗率與生效日;改版有紀錄

BOM 只存在工程師腦中,或圖面與實際做法不一致

研發或工程

前置時間與安全庫存

每顆採購件用近半年實際交期;自製件有標準工時

全部填同一個預設值,或直接留空

採購加生管

期初庫存

上線前盤點一次,帳實相符

帳上庫存幾個月沒盤,差異大到沒人敢信

倉管

建議的順序是先挑一條產品線試算一個月:系統算、人也照舊算,兩邊對答案,數字對得上再放大到全廠。ERP 導入前的資料體檢,ERP CRM 導入前 90 天資料準備度體檢列了更完整的清單;如果是舊系統算料算不準、在想要不要換,可以看ERP 該換了嗎。進銷存和 ERP 模組怎麼取捨,進銷存軟體怎麼選有月費級距可以對照;真的要走客製,客製化 ERP 系統開發完整攻略整理了報價區間和驗收關卡。

ℹ️我們怎麼看

MRP 的算法不會再有大變化,接下來幾年的變化會發生在資料端:訂單從 LINE、電商平台自動進來,現場用掃碼和感測器回報完工,MRP 每天甚至每小時重算一次。對中小工廠來說,這代表該先投資的是「資料自動進系統」這一層,算料引擎直接用 ERP 或現成工具就好。我們的取捨也是這樣:不重寫成熟的計算邏輯,把力氣花在讓資料準時、正確地流進去。判斷要不要動手,可以看一個數字:生管每週花多少時間在對料和改表。超過一天,就值得開始規劃。

ℹ️我們做過這件事

恆遠目前累積 40+ 企業客製案落地,做的多半是企業內部的營運系統。其中跟 MRP 最接近的,是影視器材租賃與檔期系統的即時可用量引擎:每一天的可租量依維修、報廢、預訂與外調動態重算,千筆預訂數秒載入、撞期自動偵測。看到這裡,如果你也在想「我們工廠的算料流程放進系統會長什麼樣子」,我們很樂意聽你聊聊現在的實際情況,也可以直接加 LINE 丟問題過來。

QMRP 是什麼意思?

在製造業,MRP 是物料需求規劃(Material Requirements Planning),依成品需求、BOM、庫存與前置時間,算出每顆料要買多少、哪一週下單。零售業商品標籤上的 MRP 是建議售價(Maximum Retail Price),兩者無關。

QMRP 的淨需求怎麼算?

淨需求 = 毛需求 + 安全庫存 − 期初在庫 − 在途收料,算出來小於或等於 0 就不用下單。算出淨需求後,再依批量規則(例如整箱 100 個)湊成計畫訂單,往前推一個前置時間就是下單週。

QMRP 和 ERP 有什麼不同?

MRP 只負責算料;ERP 是整合訂單、採購、庫存、生產與財務的整套系統,MRP 通常是 ERP 生產模組裡的計算核心。只缺算料的小工廠可以先用獨立 MRP 工具,需要帳務與單據串接的再上 ERP。

QMRP 和 MES 要先導入哪一個?

看你缺的是哪一段。常常缺料、囤料,先做 MRP;料夠但現場進度看不到、良率追不到,先做 MES。兩者會互相餵資料:MRP 給工單,MES 回報完工數與耗料。

Q小工廠用 Excel 算 MRP 可以嗎?

單一產品線、兩層 BOM、料號百個以內,Excel 可以。出現共用料、BOM 常改版、多人同時改表,或每週對料超過一個工作天,就該考慮系統。

QMRP 和 MRP II 差在哪?

MRP 只算物料,預設產能無限;MRP II(製造資源規劃)多了產能需求規劃與主排程,會檢查機台和人力排不排得下。現在的 ERP 生產模組大多已包含 MRP II 的功能。

分享文章
恆

AUTHOR

恆遠數位編輯團隊

查看作者頁

留言(0)

尚無留言,成為第一個留言的人吧!

需要網站系統架設或軟體開發?

無論是品牌官網、客製化系統還是應用程式,我們的團隊擁有豐富經驗,歡迎聯繫我們,讓專業為您的事業加分。