調撥單就是中央倉(00 主倉庫)把貨撥給各門市(屏東、潮州、恆春、東港)時用的內部單據。
系統會把下面三種需求合在一起,自動產生調撥單:
系統每天會自動跑一次完整流程。看懂下面這條時間軸,你就比較容易判斷「為什麼這個品項今天會、或不會出現在調撥單上」。
| 類型 | 用途 | 權限 |
|---|---|---|
| 自動批次(預測) | 系統每天凌晨自動建立,四家門市整批一起算 | 系統自動產生,你主要負責看過去確認 |
| 手動建立 | 臨時補貨、補一張單,或是跨日的特殊調撥 | 需要「建立調撥單」權限 |
進入路徑: /transfer-orders
| 功能 | 用途 |
|---|---|
| 狀態篩選 | 可切換:預設 / 僅看預測中 / 所有狀態 |
| 排序 | 可選最新優先,或最早優先 |
| 批次選取 | 勾選多筆,一起做批次操作 |
| 批次操作 | 一次批次取消 / 核准 / 驗證 / 送出 |
| 單張開啟 | 點任何一筆,就會進到那張單的詳情頁 |
| 批次動作 | 說明 |
|---|---|
| 批次取消 | 把你勾選的調撥單一次全部取消(取消後沒辦法復原) |
| 批次核准 | 勾選多張一起核准(適合你全部看過之後一次處理) |
| 批次驗證 | 只跑檢查、不送出,先看看有沒有問題 |
| 批次送出 | 核准之後,一次把它們送到 ERP |
進入路徑: 在列表點任何一筆,或在預測工作頁點調撥單連結,都能進來
| 區塊 | 內容 |
|---|---|
| 調撥單抬頭 | 這張單的基本資料:單號、狀態、出貨倉、目的門市、單據日期、補貨區間、備註 |
| 行項清單 | 列出每個 SKU 的:商品、淨需求、門市供給、調撥結果(最終)、警示旗標 |
| 銷售訂單需求 | 這個批次有關聯到的銷貨單明細 |
| 操作按鈕 | 核准 / 取消核准 / 送出至 CosmosERP / 開始揀貨 / 取消調撥單 |
| 稽核軌跡 | 記錄誰在什麼時候改了什麼 |
「分配工作台」是比較進階的檢視畫面,可以一次看完整個批次裡的所有 SKU,把來源倉、各門市、各種預測方法的數字擺在一起對照。這是你最重要的審視工具。
進入路徑: 在預測工作頁點「分配工作台」
| 欄位 | 說明 |
|---|---|
| 商品 | 商品代碼加上名稱 |
| 出貨倉 (q50) | 來源倉這邊的資訊:規劃預測、現貨、保留、淨供給、餘量 |
| 各門市 (q70) | 每家門市的資訊:目標庫存天數、最低上架量、整箱線、規劃預測、目標預測量、Chronos / TimesFM / 移動平均、客訂、即時、淨需求、系統分配、最終 |
| 欄位 | 意思 |
|---|---|
| 規劃預測 | 這個批次實際採用的 TSL 預測值(把三種方法整合起來算出來的) |
| 目標預測量 | q70 在目標庫存天數這段期間內,預估會用掉的量 |
| 下限後預測 | 把目標預測量和最低上架量兩個數字拿來比,取比較大的那個 |
| Chronos / TimesFM / 移動平均法 | 三種預測方法各自算出來的結果。顯示 n/a 是指這個方法對這個 SKU 算不出結果,不是 0 的意思 |
| 淨需求量 | 門市自己的庫存先扣掉客訂和預測要用的量,剩下還差、要靠倉庫補的,就是淨需求量 |
| 系統分配量 | 來源倉跑完分配邏輯後,實際分給這家門市的數量 |
| 最終 | 一開始等於系統分配量;你手動改過之後,就以你改的為準 |
在工作台點某個品項,就會進到「分配稽核」頁,這裡會把計算過程列得更完整,包括:
每張調撥單從草稿到送進 ERP 之前,都一定要先經過審核和核准。
只要還沒送出、也還沒開始揀貨,點「取消核准」就能退回草稿,繼續修改。
| 方式 | 觸發 |
|---|---|
| 手動送出 | 你自己點「送出至 CosmosERP」按鈕 |
| 開始揀貨 | 倉管點「開始揀貨」,系統會自動送 ERP,同時把這張單凍結,之後不再變動 |
| 截單自動送 | 已核准的草稿一過截單時間,系統就自動結案送出 |
每家門市都可以設自己的截單時間。已經核准、但還沒送出的草稿,一過截單時間,系統就會自動送進 ERP。
| 場景 | 結果 |
|---|---|
| 已核准 + 截單前 | 新進來的銷貨單會合併進這張單 |
| 已核准 + 截單後 | 系統會自動把它送進 ERP |
| 未核准 + 截單後 | 系統不會幫你送,只會留一個警示,要你自己補核准 |
進入路徑: 在調撥單列表點「調撥政策」
| 層級 | 內容 |
|---|---|
| 全域預設 | 所有 SKU 共用的預設值(像 TSL、補貨天數、要不要走整箱線等等) |
| 倉庫政策 | 來源倉自己的設定(例如來源倉補貨天數) |
| 門市政策 | 各家門市自己的設定(補貨天數、揀貨截止時間、天氣區域) |
| SKU 覆寫 | 針對某個 SKU、在某家門市,單獨改它的 TSL |
在全域政策這邊,你可以上傳「歷史客製訂單」CSV。系統在做預測之前,會先從倉別的訓練需求裡把這些不是常態的需求扣掉,免得某幾張大單把預測量拉得太高。
針對某家門市搭某個 SKU,你可以單獨改下面這些設定:
「預測工作」就是預測排程每次跑的執行紀錄。每天凌晨 01:15 會跑一次,每跑一次就產生一筆預測工作。
進入路徑: 在調撥單列表點「預測工作列表」
| 狀態 | 說明 |
|---|---|
| 等待中 | 排程還沒開始跑 |
| 已送出 | 預測請求已經送出去了 |
| 執行中 | 模型正在跑 |
| 成品就緒 | 預測算完了,等 Dawu 匯入 |
| 已匯入 | Dawu 已經把預測結果讀進來了 |
| 完成 | 整個流程都跑完了 |
| 失敗 | 中途出錯了,去看錯誤訊息 |
| 區塊 | 內容 |
|---|---|
| 抬頭 | 這筆工作的基本資料:預測工作 ID、Dawu 狀態、預測服務狀態、補貨區間 |
| 批次調撥單 | 這次預測產生了哪些調撥單 |
| 匯入指標 | 門市快照數、倉別快照數、分配紀錄、調撥單行數 |
| 方法快照 | Chronos / TimesFM / 移動平均各自跑得怎麼樣 |
| 執行追蹤 | Kubernetes Job、Manifest URI、Status URI、Artifact URI |
如果昨晚的預測失敗了,或是你想重跑一次:
預測還在跑的時候,可以點「停止預測」把這個批次中止掉。中止後,這批次的所有調撥單都會被標成「預測失敗」。
預測模型會把「天氣」當成一個共變數(covariate,也就是會影響預測結果的參考因素)。所以只要少了最近的天氣資料,預測就會卡住、甚至失敗。
在調撥單列表點「天氣」連結,就會到 /transfer-orders/weather
| 狀態 | 說明 | 下個動作 |
|---|---|---|
| 預測中 | 預測排程正在跑 | 等候 / 停止 |
| 預測失敗 | 預測跑出錯了 | 取消 / 重試 |
| 草稿 | 預測算完了,等你看過確認 | 核准 / 取消 |
| 審核中 | 有人手動改過數量 | 核准 / 取消 |
| 已核准 | 主管已經核准,等著送進 ERP | 送出 / 開始揀貨 / 取消核准 |
| 送出失敗 | 送進 ERP 時出錯了 | 看錯誤訊息 / 重試 |
| 已送出 | ERP 已經收到了 | 無(凍結) |
| 已取代 | 被新的批次蓋過去了 | 歷史紀錄 |
| 已取消 | 有人把它取消了 | 歷史紀錄 |
調撥單的行項上,可能會跳出各種橘色的警示旗標,提醒你有哪些地方要多留意。
| 旗標 | 意思 | 需要處理嗎 |
|---|---|---|
| 來源受限 | 來源倉的庫存不夠,已經按比例分掉了 | 去看一下來源倉庫存,需要的話自己調整 |
| 門市保留未覆蓋 | 下次到貨之前的銷貨單,量還沒補足 | 看一下銷貨單和分配量 |
| 客訂需求未滿足 | 客戶訂單要的量沒給足 | 客服跟業務溝通一下 |
| 預測需求未滿足 | 預測要的量沒給足 | 確認一下業務上是不是真的需要 |
| 預測天期不足 | 預測涵蓋的天數,比目標庫存天數還短 | 可以接受,但下一趟車來之前可能會不夠撐 |
| 客製逾期 | 客戶訂單的交貨日已經過了 | 確認一下客戶是不是還要 |
| 手動行項 | 這一筆是有人手動加進來的 | 確認一下當初為什麼要加 |
| 已套用門市庫存上限 | 預測補貨量因為碰到這家門市這個 SKU 的「庫存上限」而被壓低了 | 屬正常。確認上限設得合理就好(客訂需求不會被這個上限砍掉) |
| 權限 | 能做什麼 |
|---|---|
| 檢視調撥單 | 可以看列表、詳情、工作台、預測工作 |
| 編輯調撥單 | 可以建立、改行項、存草稿 |
| 核准調撥單 | 可以核准、取消核准 |
| 送出 ERP | 可以送出至 CosmosERP、開始揀貨 |
| 編輯政策 | 可以改全域 / 門市 / 倉庫 / SKU 政策 |
| 手動建立調撥單 | 可以手動建立非預測類的調撥單 |
5-30 秒內就會看到,因為系統每 5-30 秒會檢查一次。
可以。只要還沒到截單時間、也還沒寫進 ERP,都還能改。這段期間新的銷貨單一樣會加進來,整張單也會跟著重新算一次。
目前系統的設計是一天只抓一次,綁在凌晨那一次。之後會改成跟銷貨單一樣,能即時更新。
目前只有兩種做法:
系統會把它記下來,但標成「跳過-過時」,不會去動正在揀貨的那張單。這種情況要改走別的補貨流程。
去工作台的分配稽核看一下:
| 版本 | 條件 | 處理 |
|---|---|---|
| ENG-576(4 月) | 日均 ≤ 0.5/天 且 nonzero_days ≥ 5 | 套 cap = local_daily_mean × cycle × 2.0 |
| ENG-579(5 月初) | 擴大到日均 ≤ 5.0/天 且 nonzero_days ≥ 5 | tight 2.0 / loose 3.0 倍率分層 |
| ENG-592 / PR #645(5 月底) | 動態倍率,依 nonzero_days 寬鬆度遞增 | 見下表 |
| nonzero_days | tight(≤ 2/天) | loose(2-5/天) | 說明 |
|---|---|---|---|
| ≥ 5 | ×2.0 | ×3.0 | 資料夠多,cap 抓緊一點 |
| 2-4 | ×3.0 | ×4.0 | 資料中等,cap 放寬一些 |
| 1 | ×5.0 | ×6.0 | 資料非常少,cap 放到最寬 |
| 0 | — | — | 完全沒資料,就不套 cap |
常見原因有幾個:
可能是這幾種情況:
可能是這幾種情況:
真的卡住的話,就點「停止預測」把它中斷掉,再自己手動重跑一次。
照下面順序檢查:
| 項目 | 預測批次 | 手動建立 |
|---|---|---|
| 來源 | 系統自己算出來 | 你自己手動輸入 |
| 含預測量? | 是 | 否(只有你手動加的行項) |
| 含銷貨單? | 是(會自動合併進來) | 否 |
| 每日一次限制 | 是 | 否,可以建很多張 |
| 方向 | 倉→門市 | 雙向都可以 |
可能是這幾種情況:
會記下這張調撥單的所有操作歷史:誰建立、誰改過、誰核准、誰送出、誰按了開始揀貨、有沒有被取消等等。出問題的時候,這是最重要的查證依據。
系統每個月會自動分析一次,看每個 SKU 該走「整箱線」還是「散撿線」(依各門市的銷量分布來判斷)。分析完會產生審核項,要由人工確認過才會套用。另外有預設的 30 天冷卻期,也就是切換後要隔 30 天,系統才會再建議下一次切換。
這份說明書會跟著系統更新一起調整。要看最新版本,請以 Dawu 系統內的公告為準。
最後更新:2026-06-08