跳轉到

程式資訊

  • 程式 IDPSHEET_2
  • 所屬子系統:Other
  • 狀態:stable

批次修改付款日期

功能簡介

「批次修改付款日期」是一支轉檔型批次工具,用來把一批已開立但尚未沖帳的付款單(PSHEET,收付款別=付款)收付款日期一次改成同一個新日期。它的母體單據是付款單;當付款單因為實際付款日延後、或要把同一批款項統一歸到某一天時,不必逐張打開付款單修改,改用本工具勾選後一次套用。

改日期不只是改一個欄位——付款單的明細是會計分錄(借貸方),改了付款日期會牽動外幣分錄的匯率匯兌損益分錄,所以本工具在套用新日期的同時會重新抓匯率、重算本幣金額、重算匯兌損益,並在存檔前檢查每張單的借貸是否平衡。適合財會/出納人員在月底結帳前批次調整付款日。

只處理付款單

程式視窗標題雖然是「批次改日期」,但查詢條件固定鎖在 收付款別=P(付款),因此只會撈出付款單。財務傳票的整批改日期請改用同系列的 批次改財傳單日期 Fsheet_1(鎖在收付款別=F)。

前置需求

  • 權限:本程式(PSHEET_2)的瀏覽與修改權限。
  • 基礎資料:批次改日與後續分錄重算會用到下列資料,請先維護妥當——
資料 影響什麼
付款單(PSHEET,付款單 查詢來源;只撈尚未沖帳、未審核的付款單
匯率表(牌告匯率/匯率維護 外幣借方分錄改日後採用的會計匯率
銀行日報表/付款銀行匯率(銀行帳戶/付款匯率 外幣貸方分錄改日後採用的帳戶匯率
匯兌損益科目設定(A3 匯兌收益/A4 匯兌損失) 重算後產生/調整匯兌損益分錄的科目

只能改未沖帳、未審核的單

本工具的查詢條件固定為「沖帳傳票號為空」且「已審核不等於 X」。已經沖帳產生傳票、或已審核的付款單不會出現在清單裡,也就無法用本工具改日期——這是為了避免動到已過帳的會計資料。

操作步驟

本工具的工具列只有 查詢存檔離開 三顆按鈕(位於畫面下方的轉檔工具列),整體流程是「查詢 → 勾選 → 設新日期 → 存檔」。

  1. 在畫面左上角的 新日期 欄輸入要套用的目標付款日期。預設值是今天(系統開窗時自動帶入當天日期)。
  2. 按工具列 查詢。系統撈出所有「未沖帳、未審核」的付款單,列在「資料」頁的上方主檔格線。
    • 撈出後,每張單會立即依新日期重新計算外幣匯率與匯兌損益,結果放在下方的「修改後資料」格線。
  3. 逐列勾選最左邊的 選擇 欄,挑出這次要改日期的付款單(可複選)。
  4. 點選任一張主檔,下方會同步顯示該單的兩份分錄:
    • 原始資料:付款單目前的原始借貸分錄(唯讀,供對照)。
    • 修改後資料:套用新日期、重算匯率與匯兌損益後的分錄。其中只有匯率欄可手動微調,改了匯率本幣金額會跟著重算。
  5. 確認無誤後按 存檔。系統會把所有勾選的付款單的收付款日期改為新日期,連同重算後的分錄一起寫回,並驗證每張單借貸平衡。
  6. 存檔成功會跳出成功訊息;依系統參數設定,視窗可能在存檔後自動關閉。若要放棄,按 離開

鎖住資料頁

若查詢時有付款單正被其他使用者鎖定(佔用中),這些單會被列在「鎖住資料」頁,頁籤標題會顯示被鎖筆數。被鎖住的單不會進入可改清單,請等對方離開後再查一次。

欄位說明

查詢條件

欄位 必填 說明 / 預設
新日期 要套用到所有勾選付款單的目標收付款日期;預設帶入今天(系統日期,格式 YYYY/MM/DD)

主檔格線(資料頁上方)

欄位 可編輯 說明
選擇 勾選代表這張單要套用新日期(存檔時只處理勾選的單)
收付款單號 付款單號
收付款日期 目前的付款日期(存檔後會被改成「新日期」)
收付款別 固定為付款
廠商代號/客戶代號 付款對象
業務員編號 承辦業務員
沖帳備註/沖帳方式 沖帳相關資訊
出納傳票號/沖帳傳票號 對應傳票號(沖帳傳票號為空才會被撈出)

修改後資料格線(資料頁下方,會計分錄)

欄位 可編輯 說明
序號 分錄序號
科目代號/科目名稱 會計科目(科目名稱由系統依科目代號帶出)
摘要 分錄摘要
幣別 原幣別
匯率 套用新日期後重抓的匯率;可手動微調,改了會重算本幣金額
原借方金額/原貸方金額 原幣借貸金額(唯讀)
本借方金額/本貸方金額 本幣借貸金額(=原幣 × 匯率,重算結果)
客廠代號/客廠簡稱 對象代號與簡稱
部門代號/員工編號/項目編號/專案代號/分類索引1~4 分錄輔助欄位

「原始資料」與「修改後資料」的差別

「原始資料」是付款單目前存檔的分錄,完全唯讀,純粹用來對照;「修改後資料」才是存檔時實際寫回的內容。兩者並排,方便你確認改日期後匯率、本幣金額、匯兌損益的變化。

欄位連動與附加功能

這一節把「輸入某欄位 / 按某按鈕後,系統會做什麼」整理出來,全部依實際程式碼描述。

開窗時:新日期預設今天

開窗時 ViewModel 會把 新日期 預設為系統當天日期(DateTime.Now,格式 YYYY/MM/DD)。你可以直接改成想要的目標付款日。

按「查詢」:撈未沖帳付款單並就地重算

當你按 查詢,系統會:

  1. 以固定條件呼叫轉檔 SP(DARB_TUR_PSHEET_2)撈資料,條件是:收付款別=付款沖帳傳票號為空、且未審核(已審核 ≠ X)
  2. 撈回主檔(付款單)、原始分錄、被鎖住的單三類資料,並把分錄的科目名稱依科目代號補上。
  3. 立即執行一次匯率重算(見下一段),把結果放進「修改後資料」。
  4. 主檔列入「資料」頁,被鎖住的單列入「鎖住資料」頁;若完全沒撈到資料,會跳「無資料」提示。
  5. 查詢完成後自動選取第一張單,下方分錄隨之顯示。

按「查詢」後的匯率重算(核心連動)

撈回資料後,系統對「修改後資料」每一筆分錄依幣別與借貸方向重抓匯率:

  • 幣別=本位幣:匯率直接設為 1
  • 外幣、且為借方分錄(原借方金額 > 0):採用匯率表中該幣別「使用日期」的匯率。
  • 外幣、且為貸方分錄:採用銀行日報表(付款銀行匯率)中該帳戶的匯率。

匯率一變動,該筆的本借方/本貸方金額會以「原幣金額 × 匯率」就地重算(依幣別小數位數四捨五入)。

匯兌損益自動產生/調整

匯率重算完,系統會對每一張付款單(依 linkid 分群)呼叫匯兌損益計算

  • 統計該單所有「非匯兌調整列」的本幣借方合計與貸方合計。
  • 本幣借方 > 本幣貸方 → 產生(或更新)一筆匯兌收益分錄(科目取自 A3 匯兌收益設定),把差額補到貸方。
  • 本幣貸方 > 本幣借方 → 產生(或更新)一筆匯兌損失分錄(科目取自 A4 匯兌損失設定),把差額補到借方。
  • 借貸已相等 → 若原本有匯兌調整列,標記為刪除。

也就是說:改了付款日 → 匯率變 → 本幣金額變 → 借貸可能不平 → 系統自動補一筆匯兌損益把它補平。這一切在你按下「查詢」當下就算好,呈現在「修改後資料」。

手動微調「匯率」欄

「修改後資料」格線裡唯一可編輯的是 匯率 欄。當你手動改某筆分錄的匯率,系統會即時用「原幣金額 × 新匯率」重算該筆的本借方/本貸方本幣金額(依該幣別的小數位數四捨五入)。

手動改匯率不會自動重算整單匯兌損益

匯兌損益是在「查詢」當下對整單算好的;手動微調單筆匯率只會重算那一筆的本幣金額,不會自動再跑一次整單匯兌損益。若需要,請以「查詢」重新觸發一次完整重算。

按「存檔」:驗證並寫回

存檔 時,系統會:

  1. 檢查是否至少勾選一張單;都沒勾會擋下並提示「無資料」。
  2. 把每張勾選單的收付款日期設成 新日期,並標記為「修改」。
  3. 取出這些單對應的「修改後資料」分錄,逐單檢查本幣借方合計 = 本幣貸方合計;只要有一張不平衡,就擋下存檔並提示「借貸不平衡,無法存檔」。
  4. 通過後,把主檔與分錄一起透過轉檔機制寫回資料庫。
  5. 存檔成功跳出成功訊息;依系統參數(U_Prgpar("24"))決定視窗是否自動關閉。

按「離開」與取消後的清空

  • 離開 直接關閉本工具視窗。
  • 若取消(轉檔工具列的取消流程觸發 AfterCancel),系統會把主檔、各層分錄與鎖住清單全部清空,回到查詢前的空白狀態。

常見問題

按了查詢卻一張單都撈不到?

本工具只撈「未沖帳(沖帳傳票號為空)未審核(已審核 ≠ X)收付款別=付款」的付款單。如果你的付款單已經沖帳產生傳票、或已經審核,就不會出現在清單。請確認該批付款單確實還在未沖帳、未審核狀態。

存檔被擋,提示「借貸不平衡」?

改了付款日期會重抓匯率、重算本幣金額,理論上系統會自動補一筆匯兌損益把借貸補平。若仍提示不平衡,通常是因為你手動改過某筆「匯率」欄導致整單借貸不再相等(手動改匯率不會自動重跑整單匯兌損益)。請重按一次 查詢 讓系統重新完整重算,或還原手動改動的匯率。

外幣分錄的本幣金額為 0 或匯率帶不出來?

匯率重算需要對應的匯率資料:外幣借方匯率表該日匯率、外幣貸方銀行日報表(付款帳戶)匯率。若該幣別/該帳戶當日沒有匯率資料,匯率會抓不到、本幣金額算不出。請先到匯率表與銀行日報表補齊對應資料再查詢。

有些付款單跑到「鎖住資料」頁,不能改?

那些單正被其他使用者佔用(鎖定中)。本工具不會去動被鎖住的單,只會把它們列在「鎖住資料」頁供你知道。請等對方離開該單後,再重新查詢。

標題寫「批次改日期」,可以拿來改收款單或財務傳票嗎?

不行。雖然標題泛稱「批次改日期」,但查詢條件固定鎖在付款單(收付款別=P),只會撈付款單。財務傳票(收付款別=F)的批次改日請改用同系列的批次改財傳單日期 Fsheet_1

相關功能


需補截圖清單

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

  1. psheet_2-step1.png — 工具全貌(左上「新日期」+ 工具列查詢/存檔/離開)
  2. psheet_2-step2.png — 「資料」頁:上方主檔格線含「選擇」勾選欄、下方「原始資料/修改後資料」兩份分錄對照
  3. psheet_2-step3.png — 「鎖住資料」頁(含被鎖筆數頁籤標題)