程式資訊
- 程式 ID:
OPERATIONFORECAST - 所屬子系統:M.主管資訊
- 狀態:stable
營運預測模擬¶
功能簡介¶
「營運預測模擬」是接單前的推演駕駛艙:用同一套需求來源(訂單+預示+去年同期預估,或製通單)一次算出產能負荷(需求)、庫存缺口與金流預測,並可把還沒成立的假想訂單填進去按 套用模擬,看多接(或少接)這批之後負荷、缺料與資金會變成什麼樣。模擬全程只在記憶體運算,不寫入任何資料。
主要使用者為生管、業務與經營主管,典型問題是:「客戶要追加一批,敢不敢接、什麼時候能交?」
與「生產計劃查詢」的分工¶
兩支程式共用同一套需求邏輯(訂單/預示/預估的時間切割、BOM 展開、報價與匯率換算),但用途分家:
| 面向 | 生產計劃查詢 | 營運預測模擬(本頁) |
|---|---|---|
| 定位 | 把需求展開成生產計畫、用料與資金線(VFP pd_qry7 的回歸精簡版) |
前瞻分析與 what-if 模擬的第二版 |
| 分頁 | 訂單、預示及預估/生產計畫/使用量(機種別)/金流預測 | 前述四頁全部都有,另加 原物料用量(庫存缺口)/模擬插單/產能負荷(需求)/樞紐分析 |
| 有沒有模擬 | 沒有 | 有(假想訂單、基準 vs 模擬對比) |
兩支是完全獨立的程式
兩者的資料庫預存程序、程式邏輯與選單項目各自獨立(見 ADR 0056),本程式日後改動不會影響生產計劃查詢。條件設定也各存各的,在自訂查詢面板中可分別加入。
前置需求¶
- 權限:M.主管資訊 →
營運預測模擬的瀏覽權限。若選單看不到本程式,請先在權限管理開啟。 - 資料庫物件:本程式有 7 支專屬預存程序(
TWORK_QRY_OPERATIONFORECAST、TWORK_QRY_OPFCST_GETORDER/PRODORDER/OTHERDATA/SUPPLY/CASHBASE/WKLOAD)。未部署時對應分頁會是空的,查詢完成後系統會一次列出警告訊息(含缺少的 SP 名稱與部署腳本路徑)。 - 基礎資料:查詢結果的完整度取決於下列資料的維護狀況——
| 資料 | 影響的分頁 |
|---|---|
| 銷售訂單(含明細交期、已交數量) | 訂單預示預估、生產計畫、庫存缺口、金流預測 |
| 預示單 | 訂單預示預估(「2.預示」列) |
| 客戶報價(客報價單) | 訂單預示預估的單價/金額、模擬插單的自動帶價 |
| 廠商報價(含關稅稅率,需審核) | 使用量頁的單價/稅後單價/金額、金流預測的計劃預測層 |
| BOM 與製程(標準工時、生產部門、工作中心) | 生產計畫的內外工時、使用量展開、產能負荷 |
| 庫存現有量與在途採購 | 庫存缺口(原物料用量) |
| 應收/應付票據、未沖帳款、收付條件 | 金流預測 |
| 匯率資料 | 成本匯率表的預設值(取當日賣出匯率) |
操作步驟¶
條件面板同樣依標示的三個步驟進行,與生產計劃查詢一致。
步驟① 設定查詢條件¶

- 選擇資料別:
訂單、預示及預估:以訂單+預示+去年同期預估當需求來源(最常用)。製通單:直接以「訂單型製通單」的預訂完工日當需求來源(不需做步驟②)。
- 輸入起訖日期:預設當年整年。資料別為訂單時比對訂單預訂交期;為製通單時比對預訂完工日。
- 輸入截止報價日期:單價只採用此日期(含)以前的最新報價。
- 視需要勾選刪除數量為零的資料。
- 在「金流預測」框內設定 帳款立帳起日(只納入立帳日在此日之後的未沖帳款,用來濾掉多年未沖的殘留舊帳)與 資金警戒線(金流圖上會畫一條紅色水平線)。
- 調整成本匯率表:預設帶入當日賣出匯率,外幣報價依此換算成本幣,可直接點儲存格修改。
步驟② 產生客戶設定(資料別=製通單可略過)¶
- 輸入預估%,按
查詢客戶設定資料。 - 系統列出每個客戶的訂單截止日、預示單號/預示起訖與預估起訖(訂單與預示都涵蓋不到的尾段,自動換算成去年的對應區間)。
- 視需要逐列修改預估起始日/預估截止日/預估百分比(只有這三欄可編輯)。
未產生客戶設定就按查詢會被擋下
資料別為 訂單、預示及預估 時,必須先按 查詢客戶設定資料;客戶設定清單為空時按 查詢 只會跳出「無資料」提示。
步驟③ 執行查詢¶
按工具列的 查詢,結果分佈在八個頁籤:
| 頁籤 | 看什麼 |
|---|---|
| 訂單、預示及預估 | 需求明細,依類別分 1.訂單/2.預示/3.預估 |
| 生產計畫 | 換算成品號別的生產需求,含內外製單位工時與總工時 |
| 使用量(機種別) | BOM 最低階展開後的採購用料、單價與金額 |
| 原物料用量 | 庫存缺口:需求對上期初庫存與在途後仍短缺的品號與日期 |
| 金流預測 | 票據/帳款/在途採購/計劃預測四層的月現金堆疊柱與累計淨額線 |
| 模擬插單 | 填假想訂單、套用/清除模擬(見下節) |
| 產能負荷(需求) | 工作中心 × 年月的需求機時 |
| 樞紐分析 | 訂單預示預估的樞紐視角,可自由重組維度 |

看庫存缺口(原物料用量)¶
- 上半部是品號彙總(一個品號一列,含缺口量合計、缺口筆數、最早短缺日、主要廠商);有缺口的品號會排在前面,並以底色標示。
- 點上方任一品號 → 下半部明細只顯示該品號的需求列(逐筆列出需求日期、需求前/後可用量、缺口量、來源單號)。
- 按
顯示全部清除選取,明細恢復顯示全部需求列。
看產能負荷(需求)¶
切到 產能負荷(需求) 頁籤,資料表格列出每個工作中心 × 年月的需求工時(時)、需求機時(分)與涉及品號數,用來看哪一站、哪個月的負荷特別集中。
產能負荷是「需求側」的第一版
需求機時 = 生產計畫數量 × 各工作中心單位工時,且只算成品本身的途程:不爆半成品 BOM、不含整備工時,也尚未與工作中心的可用產能(工作中心行事曆)比對。它回答的是「需求集中在哪」,不是「一定做不完」。
模擬插單(what-if 推演)¶

- 先按
查詢取得基準資料——沒有基準就按套用模擬會跳出提示。 - 切到 模擬插單 頁籤,在資料表格最下方的新增列填入假想訂單,一列一筆:
- 品號(必填,可用放大鏡查詢,選定後自動帶出品名)
- 數量(必填,不可為 0;正數=插單、負數=減單,用來推演「這張單取消會怎樣」)
- 預訂交期(必填)
- 客戶代號(填了會自動帶客戶簡稱,並據以帶出該客戶的報價)
- 單價(留 0 表示自動帶客戶最新報價;報價為外幣時依成本匯率換成本幣)
- 備註(選填)
-
按
套用模擬。系統把這些假想訂單展開 BOM,重算庫存缺口與金流預測,並在按鈕右側顯示對比摘要,格式為:模擬 3 筆:短缺品號 12 → 17,累計淨額最低點 -1,240,000 → -2,050,000箭頭左邊是基準、右邊是模擬後——短缺品號多了幾項、資金最低點掉到哪裡,一行看完。
-
到 原物料用量 與 金流預測 兩個頁籤看細節:
- 庫存缺口明細會多出模擬帶進來的需求列(
模擬欄有值)。 - 金流圖上除了原本的黑色累計淨額折線,會再畫一條紅色的模擬累計淨額折線,兩條並排比較。
- 庫存缺口明細會多出模擬帶進來的需求列(
- 覺得吃不下就回模擬插單頁調整交期或數量,再按一次
套用模擬;推演完按清除模擬即回到基準檢視。
模擬不寫入任何資料
假想訂單只存在於這次查詢的記憶體結果中,不會產生訂單、不會佔用庫存、不會留下任何紀錄。關掉程式或重新查詢即消失,怎麼試都不會弄髒系統。
套用模擬時,產能負荷分頁不會跟著變
目前 套用模擬 只重算庫存缺口與金流預測兩項;產能負荷(需求) 分頁維持查詢當下的基準值。要看假想訂單對某一站負荷的影響,請把該筆需求先反映到條件(例如改用製通單口徑)後重新查詢。
樞紐分析與明細追查¶
- 切到 樞紐分析 頁籤,預設版面為:列=客戶簡稱 × 品號、欄=年度 × 月份、值=Σ金額 與 Σ訂單數量。
- 右側的欄位清單可拖拉重組維度(例如改成以品號為列、客戶為欄)。
- 雙擊任一彙總格 → 開啟唯讀明細視窗,列出構成該格數字的訂單明細;雙擊表頭或空白處不會有反應。
金流預測分頁的過濾¶
- 上方來源勾選:
基礎(票據/帳款)是已存在的單據、推估(在途採購/計劃預測)是尚未發生的推估,可各自開關,圖與明細同步重算。 - 點圖表的某一柱段 → 下方明細立即過濾到「該月 × 該來源 × 該收付」;點圖表空白處即清除過濾。
- 圖上另有灰色零軸與紅色資金警戒線(金額取自條件面板);縱軸可用滑鼠滾輪縮放、拖曳上下平移(橫軸年月不縮放)。
小技巧
改了成本匯率或客戶設定後,直接再按一次 查詢 即可重算,不必重做步驟②。各頁籤的資料表格都支援匯出 Excel(資料表格右鍵)。
欄位說明¶
查詢條件(步驟①)¶
| 欄位 | 必填 | 說明 |
|---|---|---|
| 資料別 | ✔ | 訂單、預示及預估 或 製通單 |
| 起訖日期 | ✔ | 訂單比對預訂交期、製通單比對預訂完工日 |
| 截止報價日期 | — | 單價只取此日(含)前的最新報價 |
| 刪除數量為零的資料 | — | 勾選時不顯示數量為 0 的列 |
| 帳款立帳起日 | — | 金流預測只納入立帳日在此日(含)後的未沖帳款 |
| 資金警戒線 | — | 金流圖上紅色水平線的金額位置;UI 用途,不影響取數 |
| 成本匯率 | — | 各幣別換算本幣的匯率,預設當日賣出匯率,可修改 |
| 預估% | — | 產生客戶設定時帶入各客戶的預估百分比 |
模擬插單¶
| 欄位 | 必填 | 說明 |
|---|---|---|
| 品號 | ✔ | 假想訂單的成品品號;選定後自動帶出品名(唯讀) |
| 客戶代號/客戶簡稱 | — | 填代號會自動帶簡稱;用於自動帶該客戶的報價 |
| 預訂交期 | ✔ | 需求日期,決定缺口與現金落在哪個月 |
| 數量(負=減單) | ✔ | 不可為 0;正數=插單、負數=抵減既有需求 |
| 單價(0=自動帶報價) | — | 留 0 時自動帶客戶最新報價並依成本匯率換本幣 |
| 備註 | — | 自由文字 |
剛打完字就按套用卻說「沒有可套用的模擬訂單」
資料表格的編輯值要落定才算數。輸入完最後一格請先按 Enter 或點到其他列,再按 套用模擬。
原物料用量(庫存缺口)¶
上半部(品號彙總)
| 欄位 | 說明 |
|---|---|
| 層級 | 該品號在展開結構中的層級 |
| 品號/品名 | 短缺料件 |
| 期初庫存 | 查詢起日的可用庫存 |
| 需求數量合計/缺口量合計 | 該品號在區間內的需求與短缺加總 |
| 缺口筆數 | 有短缺的需求筆數 |
| 最早短缺日 | 第一次不夠用的日期 |
| 廠商代號/廠商簡稱 | 主要供應廠商 |
| 模擬 | 該品號的缺口是否含模擬插單帶進來的需求 |
下半部(需求明細)
| 欄位 | 說明 |
|---|---|
| 需求日期/需求數量 | 逐筆需求 |
| 來源單號/客戶․組件 | 需求來自哪張單、哪個上階組件 |
| 在途累計 | 該需求日之前已進廠的在途採購累計 |
| 需求前可用量/需求後可用量 | 扣這筆需求前後的可用量 |
| 缺口量 | 需求後可用量為負的部分 |
產能負荷(需求)¶
| 欄位 | 說明 |
|---|---|
| 工作中心 | 製程所屬工作中心 |
| 年月 | 需求落點的年月 |
| 需求工時(時)/需求機時(分) | 生產計畫數量 × 單位工時換算的需求量 |
| 品號數 | 該工作中心該月涉及的品號數 |
金流明細¶
| 欄位 | 說明 |
|---|---|
| 層級 | 票據/帳款/在途採購/計劃預測 |
| 收付 | 收(綠底)/付(紅底) |
| 預計現金日/年月 | 推算出的現金進出日與其年月 |
| 本幣金額/幣別 | 該筆現金的本幣金額 |
| 來源單號/對象代號/對象簡稱 | 來源單據與往來對象 |
| 可信度/備註 | 資料可信度與來源說明 |
其餘「訂單、預示及預估」「生產計畫」「使用量(機種別)」三頁籤的欄位意義與生產計劃查詢完全相同,不再重複。
常見問題¶
按查詢後跳出一串警告,說某個 SP 找不到?
本程式有 7 支專屬預存程序,缺哪一支就會少哪一塊資料(庫存缺口、金流、產能負荷最常見)。請把訊息中列出的部署腳本交給系統管理員在目前連線的資料庫執行一次。
按了 套用模擬 卻說「請先執行查詢,取得基準資料後才能套用模擬」?
模擬是在基準結果上做增減,所以必須先按 查詢 跑出基準。重新設定條件後也要重查一次。
模擬會不會真的建出訂單、或影響別人看到的數字?
不會。假想訂單只在本機記憶體參與運算,不寫入資料庫,也不影響其他使用者。按 清除模擬 或重新查詢即還原。
模擬後產能負荷的數字沒變?
這是目前的行為:套用模擬 只重算庫存缺口與金流預測,產能負荷維持基準值。
產能負荷顯示某站爆量,是不是真的做不完?
產能負荷呈現的是需求機時,尚未與工作中心的可用產能比對,也不含整備工時與半成品途程。它用來看「負荷集中在哪一站、哪個月」,是否做得完仍需搭配現場排程判斷。
缺口清單裡有些品號的最早短缺日是空的?
表示該品號在整個查詢區間內都沒有短缺(缺口量 0),只是因為有需求而列入彙總。有缺口的品號會排在清單最前面。
預估會不會跟訂單/預示重複計算?
不會扣量——與生產計劃查詢同一套邏輯,用「時間切割」避免重複。完整說明見生產計劃查詢的預估邏輯。
樞紐分析雙擊沒有跳出明細?
請雙擊資料格(有數字的彙總格);雙擊列/欄標題或空白處不會有反應。
相關功能¶
需補截圖清單
以下截圖待功能 runtime 驗收後補拍(放 docs/M-EIS/images/):
operationforecast-step2.png— 查詢結果八個頁籤(建議以「原物料用量」庫存缺口頁為主畫面)operationforecast-step3.png— 模擬插單頁籤(含已填的假想訂單列與套用模擬後的對比摘要)operationforecast-wkload.png— 產能負荷(需求)頁籤operationforecast-pivot.png— 樞紐分析頁籤與雙擊後的明細視窗
選單代號
code 由登錄腳本 sql/營運預測模擬_register_program_darbnogicsa1.sql 自動配發未使用的 M-NN,配發後請回填本頁 front-matter。