程式資訊
- 程式 ID:
PosplitVariant - 所屬子系統:G.採購付款
- 狀態:stable
採購單明細拆分(Posplit)¶
功能簡介¶
「採購單明細拆分」(Purchase Order Split)不是一支獨立的程式,而是 採購單(Purch) 明細格線上的一個彈出子視窗。它沒有自己的主選單編號,必須從採購單明細列上按 拆分 按鈕才會開啟,用來把同一筆採購明細的數量切分成多列,方便分批交貨或分列管理。
完整的採購單操作流程與所有欄位說明,請見主程式頁面:採購單(Purch);本頁只說明拆分子視窗本身的行為。
為什麼有兩個名字?
這個視窗在程式碼中以 Posplit / Purchase Order Split 命名,與採購單(PURCH)共用同一份明細資料來源(Twork_pur_vw_purchSource)。它由 PurchViewModel 的 SplitCommand 開啟,本身沒有獨立的 ProgramClass,因此不另立完整手冊頁。
前置需求¶
- 必須先進入 採購單(Purch) 並處於可編輯狀態(新增或修改中)。
- 要拆分的明細列必須已填品號,且數量大於 0——程式在開窗前會檢查
品號非空且數量 > 0,不符則拆分按鈕不會開啟視窗。 - 拆分視窗的權限沿用採購單本身,不另設權限項。
拆分按鈕目前未對外開放
採購單明細格線中的 拆分 按鈕欄位在目前版本的 Purch.xaml 中為註解停用狀態,預設不顯示。子視窗(Posplit)本身已實作完成,但需開啟該欄位後才會出現在明細列上。若採購單上看不到 拆分 按鈕,屬正常現象——此功能尚未在採購單畫面正式啟用。
操作步驟¶

- 在採購單明細格線該列按
拆分,開啟拆分視窗。視窗上方會帶出原明細的唯讀資訊(品號、原數量、暫收數量、原預訂交期)並計算出可拆分數量。 - 視窗預設提供 10 列空白可填,每列預設 數量 為 0、品號與交期沿用原明細。只在你要拆出的列填入數量(可一併修改該列的 ETA)。
- 每填一列數量,視窗下方的 Sum Total(已填數量加總)會即時更新。
- 按
儲存,系統驗證 Sum Total 不可超過 可拆分數量;超過會跳出Split QTY is beyond the allowed QTY警告並中止。 - 通過驗證後,視窗關閉,系統把有填數量(數量 > 0)的列回填到採購單明細,並從原明細的數量扣除已拆出的總量。
- 不想拆分時按
離開直接關閉視窗,原明細不受影響。
可拆分數量怎麼算
可拆分數量=原明細的 數量 − 暫收數量。已有暫收(暫收數量)的部分不可再拆,因此暫收越多、可拆分越少。
回填列的序號
回填的每一列會自動沿用原明細的 序號 後接兩位流水序(例如原序號後接 01、02…)。回填採用 append 方式加到明細尾端,並非緊接原列插入,必要時需人工確認排序。
欄位說明¶
上方原明細資訊(唯讀)¶
| 欄位 | 說明 |
|---|---|
| SKU | 原明細的品號 |
| Original QTY | 原明細的數量 |
| In-transit QTY | 原明細的暫收數量(已暫收部分不可拆) |
| Original ETA | 原明細的預訂交期 |
| Allow To Split QTY | 可拆分數量=Original QTY − In-transit QTY |
| Sum Total | 下方各列已填數量的加總,即時計算 |
下方拆分明細格(可編輯)¶
| 欄位 | 可編輯 | 說明 |
|---|---|---|
| SKU | — | 沿用原明細品號 |
| Quantity | ✔ | 本列要拆出的數量,預設 0;只有 > 0 的列會被回填 |
| ETA | ✔ | 本列的預計到貨日,預設沿用原明細交期 |
常見問題¶
採購單上找不到 拆分 按鈕?
該按鈕欄位目前在 Purch.xaml 中為註解停用狀態,預設不顯示,屬於尚未正式啟用的功能。
按 拆分 沒有反應、開不了視窗?
開窗前會檢查該明細列的 品號 不可空白且 數量 必須大於 0。請先確認該列已填品號並有數量。
儲存時跳出 Split QTY is beyond the allowed QTY?
各列填入數量的加總(Sum Total)超過了可拆分數量。請降低拆出數量;可拆分數量=原數量 − 暫收數量。
拆分後原明細數量變了?
這是正常的——拆出的總量會從原明細數量中扣除,拆出的列再以新序號回填到明細尾端,拆分前後總量不變。
相關功能¶
- 採購單(Purch) — 主程式,拆分功能的來源頁面
- 採購單列印
- 廠商報價單
- 採購模組總覽
需補截圖清單
以下截圖待 拆分 按鈕正式啟用、功能 runtime 驗收後補拍(放 docs/G-Purchasing/images/):
posplit-window.png— 拆分子視窗全貌(上方原明細資訊 + 下方 10 列拆分格 + Sum Total)