跳轉到

程式資訊

  • 程式 IDPPURCH_C
  • 所屬子系統:G.採購付款
  • 狀態:stable

採購單批次結案

功能簡介

「採購單批次結案」用一個視窗,把指定請購單號區間內已轉成採購單的單據一次撈出來,讓採購人員勾選後整批標記結案。它不逐張開採購單,而是用查詢清單+勾選+一次存檔的方式,把選取的採購單的 結案 欄位寫成 Y,回寫到採購單主檔(purchm)。

適合在請購/採購流程跑到尾端、要把一批不再進貨或已結束的採購單統一收尾時使用,省去逐張開採購單按結案的工。畫面以兩個頁籤呈現:左頁是「可結案的採購單」清單,右頁是「鎖住資料」(系統判定目前無法處理、被他人鎖定的單據)。

與 VFP 舊版的對應

本程式對應 VFP 舊版表單 PPURCH_C(表單標題「批次轉換結案視窗」)。功能與舊版一致:以請購單號區間查詢、勾選、整批寫入結案。

前置需求

  • 權限:G.採購 → G-040 的瀏覽與修改權限(需有寫入採購單的權限才能存檔結案)。
  • 基礎資料 / 前置作業
資料 / 前置作業 影響的結果
已建立並轉成採購單的單據(採購單 查詢清單只列出「已由請購轉採購」、可結案的採購單,沒有採購單就查不到資料
請購單號(請購單 查詢條件用請購單號作為起訖區間比對
採購單目前未被他人鎖定 被其他使用者編輯中/鎖定的單據會落在「鎖住資料」頁,無法在此結案

操作步驟

本表單以模態視窗開啟,底部工具列為轉檔型的 儲存 / 取消 / 離開 按鈕。

  1. 在上方輸入查詢區間:起始單號截止單號(兩欄都是唯讀文字框,由單號挑選控件帶入;比對的是請購單號)。
  2. 查詢,系統執行查詢並把結果分流到兩個頁籤:
    • 採購單資料頁:可結案的採購單清單(左側有勾選欄)。
    • 鎖住資料頁:目前無法處理/被鎖定的單據,頁籤標題會帶出筆數。
  3. 在「採購單資料」頁逐列勾選要結案的採購單;或用底部的 全選 / 全部不選 一次套用。
  4. 確認勾選無誤後,按底部的 儲存,系統把勾選的採購單寫入結案。
  5. 存檔成功會跳出成功訊息;視系統參數設定,視窗可能在存檔後自動關閉。若要放棄,按 取消(清掉這次選取)或 離開 關閉視窗。

注意

勾選並 儲存 後即把採購單的結案標記為 Y,這是寫回採購單主檔的實際異動。請先確認該批採購單確實要收尾,再執行批次結案。

欄位說明

查詢條件

欄位 說明 / 格式 / 預設
起始單號 查詢區間起點,比對請購單號;唯讀,由單號控件帶入,預設空字串
截止單號 查詢區間終點,比對請購單號;唯讀,由單號控件帶入,預設空字串

起訖單號未設必填

上方查詢條件區的標題為「起訖單號」(XAML 起訖單號 多語系字串,FallbackValue 為「起始單號」)。VFP 舊版在按查詢時會擋空白起始單號(跳「單號不得為空白」),但新版的查詢命令未複製此檢核;若兩欄皆留空,等同以全範圍查詢。

採購單資料頁(可結案清單)

欄位 可編輯 說明
選擇 勾選欄,決定該列是否納入批次結案
請購單號 來源請購單號
採購單號 對應的採購單號
採購日期 採購單日期
廠商代號 / 廠商簡稱 供應廠商
總原幣未稅 採購單原幣未稅總額
結案 目前結案狀態(Y 表已結案)
送貨地點 採購單送貨地點

鎖住資料頁

欄位 說明
修改人員 目前鎖定/正在編輯該單的人員
請購單號 / 採購單號 / 採購日期 該筆被鎖住單據的識別資訊
廠商代號 / 廠商簡稱 / 總原幣未稅 / 結案 / 送貨地點 與採購單資料頁相同的單據欄位

欄位連動與附加功能

這一節把「按某個動作後系統實際會做什麼」逐條說明,全部依程式碼行為描述。

  • 查詢(QueryCommand):以「請購單號 between 起始單號 and 截止單號」為條件呼叫後端預存程序 DARB_TUR_PPURCH_C,回傳兩個結果表:

    1. 第一表填入鎖住資料頁(LockedSource)——系統判定目前無法轉檔/被他人鎖定的單據。
    2. 第二表填入採購單資料頁(Master)——可供勾選結案的採購單清單。 查詢成功才會把兩個頁籤的清單換掉;查無資料時會跳「查無資料」訊息,被他人佔用時則顯示佔用者訊息。
  • 「鎖住資料」頁籤筆數:當鎖住清單有資料(筆數大於 0),頁籤標題旁會顯示鎖住筆數;沒有鎖住資料時該筆數隱藏。這讓你一眼看出有沒有單據因被鎖定而無法結案。

  • 全選(SelectAllCommand):把「採購單資料」頁目前清單的每一列選擇欄都勾起來。

  • 全部不選(UnselectAllCommand):把「採購單資料」頁每一列的選擇欄都取消勾選。

  • 勾選 / 取消「選擇」欄:只是切換該列的選取狀態(IsSelected),不會立即異動資料;真正的結案動作在 儲存 時才一次處理。

  • 儲存(SqlEditTurn 儲存鈕):系統挑出「採購單資料」頁中所有已勾選的列,對每一列標記為修改(增刪修=E)並把 結案 設為 Y,再以採購單(PURCH)的身分把這些異動寫回採購單主檔(purchm)。存檔成功顯示成功訊息;依系統參數(使用者參數第 24 項)決定是否在存檔後自動關閉視窗。

    只動結案欄

    批次結案只改採購單的結案標記,不會更動採購單的數量、單價、交期等其他內容。它寫回的目標是採購單主檔,不是請購單。

  • 取消(SqlEditTurn 取消鈕):放棄這次的選取與結案動作,回到一般狀態;依系統參數可能關閉視窗。

  • 離開(ExitCommand)/視窗 離開:關閉此模態視窗,不做任何結案。

尚未提供的功能

本表單目前沒有列印、轉傳票、簽核、附件或匯出 Excel 等延伸功能;它是一個單純的「查詢→勾選→批次寫結案」工具。如需查看或列印採購單明細,請到採購單

常見問題

按了查詢卻跳「查無資料」?

請確認:(1)輸入的是請購單號區間,而非採購單號;(2)該區間內確實有「已轉成採購單」的單據。沒有對應採購單的請購不會出現在此清單。查無資料時系統會顯示「查無資料」訊息(共用 NoData 訊息)。

某些單據跑到「鎖住資料」頁,無法勾選結案?

「鎖住資料」頁列出的是系統判定目前無法處理的單據——通常是被其他使用者編輯中或鎖定。頁面會顯示修改人員,請等對方放開該單後再重查;這些單據在本表單無法被勾選結案。

勾了好幾張卻只結案了一部分?

批次結案只處理「採購單資料」頁中已勾選(選擇欄打勾)的列。請確認要結案的列都已勾選,必要時用 全選 一次套用;落在「鎖住資料」頁的單據不會被處理。

結案後想反悔,可以在這裡取消結案嗎?

不行。本表單只負責把選取的採購單標記為結案(結案=Y),沒有「解除結案」的反向功能。若需調整結案狀態,請至採購單處理。

存檔後視窗自動關掉了,是正常的嗎?

是。存檔後是否自動關閉視窗由系統參數(使用者參數第 24 項)控制,預設為存檔後關閉。若希望保留視窗繼續處理下一批,請洽系統管理員調整該參數。

相關功能


需補截圖清單

以下截圖待功能 runtime 驗收後補拍(放 docs/G-Purchasing/images/):

  1. ppurch_c-step1.png — 上方查詢條件(起始單號~截止單號)與 查詢 按鈕
  2. ppurch_c-step2.png — 「採購單資料」頁勾選清單(含選擇欄、全選/全部不選按鈕)
  3. ppurch_c-step3.png — 「鎖住資料」頁(頁籤帶出鎖住筆數)