跳轉到

程式資訊

  • 程式 IDPAY_QRY1
  • 所屬子系統:I.帳款管理
  • 狀態:stable

應付帳齡表

功能簡介

「應付帳齡表」把目前所有未付清的應付帳款依立帳日期、到期日切成數個帳齡桶(30 天 / 60 天 / 90 天 …),讓財會與採購主管一眼看出哪些廠商的款項放了多久、有沒有逾期。它不會異動任何單據,純粹是把 付款帳款處理(Paymnt)沖帳作業(Payapply) 等已過帳的應付資料彙整成多個角度的報表。

一次查詢會同時算出五張表(以頁籤呈現):

  1. 帳齡分析表 —— 各廠商未付款落在哪個帳齡桶,含逐筆明細子表。
  2. 未付帳款彙總 —— 依「前期 / 本期 / 最新」三段切的廠商未付款彙總與明細。
  3. 未付帳款明細 —— 每一筆應付帳款的原幣 / 本幣、沖帳、發票、稅別等完整欄位。
  4. 會計師帳齡表 —— 以「立帳月份距今幾個月」分桶(會計師查核用格式)。
  5. 逾期帳齡表 —— 以到期日而非立帳日分桶,凸顯已逾期的金額。

本程式同時是主管儀表板 主管資訊儀表板(EISDASH) 應付相關卡片的下鑽(drill-down)目的地。

資料來源與條件面板

查詢透過 SP DARB_QRY_PAY_QRY1 一次取回全部未付帳款的暫存資料,五個頁籤都在 C# 端用同一批資料計算分桶,不需個別查詢。查詢條件集中在獨立的條件面板(ApageCondition.xaml),詳見應付帳齡查詢條件

前置需求

  • 權限:I.應收應付 → I-140 應付帳齡表 的瀏覽權限;列印 / 匯出另需列印權限。
  • 基礎資料:本表只彙整既有應付資料,下列主檔影響欄位顯示與分桶結果——
資料 影響的結果
應付帳款單據(PaymntPayapply 等已過帳的應付 / 沖帳) 全部頁籤的資料來源;未過帳或已沖平者不出現
廠商主檔(含收付條件) 廠商簡稱 / 廠商名稱、會計師帳齡表的收付條件號 / 付款條件(逾期帳齡表的收付條件號 / 付款條件則來自查詢結果本身)
收付條件設定 到期日推算(影響逾期帳齡的分桶)
單據別翻譯(Rpdef) 明細的財務類別稱 / 單據名稱顯示文字
本位幣設定 會計師 / 逾期帳齡的原幣 vs 本幣金額拆分(非本位幣列為外幣 1、外幣 2)

操作步驟

  1. 從主選單開啟 I 應收應付 → 應付帳齡表
  2. 在左側條件面板設定查詢條件(詳見欄位說明):

    1. 選擇 查詢別現有餘額(以今天為帳齡基準)或 截止日期(以指定日為基準,並啟用右方日期輸入框)。
    2. 視需要調整六個 期間 天數(預設 30 / 30 / 30 / 90 / 180 / 360)。
    3. 設定 廠商代號 起訖區間(預設全部)。
    4. 確認 結帳年度 / 結帳月份(預設上個月),用來把彙總頁切成「前期 / 本期」。
  3. 按工具列的 查詢,結果填入右側五個頁籤。

  4. 在「帳齡分析表」「未付帳款彙總」「會計師帳齡表」等頁籤點選某廠商列,下方明細子表會自動連動顯示該廠商的逐筆資料。
  5. 需要紙本時按 列印 / 預覽;需要試算或外發時按 匯出 Excel(詳見欄位連動與附加功能)。

    小技巧

    改了查詢條件後直接再按一次 查詢 即可重算,不需重新開窗。各頁籤的格線皆可在格線上右鍵另存或直接走 匯出 Excel 一次帶出全部頁籤。

條件面板與五頁籤

欄位說明

查詢條件(左側面板)

欄位 必填 說明/格式/預設
查詢別 現有餘額(以今天為帳齡基準日)或 截止日期(以下方輸入日為基準)。預設 現有餘額
截止日期 僅查詢別為 截止日期 時可輸入(yyyy/MM/dd)。預設今天;切到 現有餘額 時自動反白停用
期間(六格) 六個帳齡桶的「各自天數」,依序累加成分界。預設 30 / 30 / 30 / 90 / 180 / 360(即 30、60、90、180、360、720 天的分界)。每格上限 3 位數
廠商代號(起 ~ 迄) 廠商代號區間。預設起 = 空(最小)、迄 = zzzzzz(涵蓋全部廠商)
結帳年度 4 碼西元年。預設上個月所屬年度
結帳月份 2 碼月份。預設上個月。與年度合併成 年度/月份,用來在「未付帳款彙總」頁切前期 / 本期

帳齡基準日的差異

現有餘額 模式以今天為帳齡分桶基準;截止日期 模式改以使用者輸入的截止日為基準(對應 VFP L_DATE=CTOD(截止日期))。兩者分桶結果會不同,外幣換算與會計師帳齡也跟著基準日走。

結果頁籤主要欄位

頁籤 主要欄位 說明
帳齡分析表 30天 / 60天 / 90天 / 180天 / 360天 / 720天 / 超過一年 / 總計 依立帳日距基準日的天數落入各桶;最後一列為全部廠商的 Total: 合計列
(下方子表) 點選廠商後顯示該廠商逐筆:傳票號碼、財務單號、財務類別、各日期、原幣 / 本幣應付、沖帳、未付、發票、匯率等
未付帳款彙總 前期未結款 / 本期應付款 / 前期本期小計 / 最新未結款 / 總未付帳款 結帳年度/月份 切:帳款期別小於本期=前期、等於=本期;最新未結款 = 總未付 − 前期 − 本期
(下方子表 + 底部合計列) 子表為該廠商未付明細;底部一排唯讀數字為全部廠商各欄合計
未付帳款明細 原幣 / 本幣應付、沖帳原幣 / 本幣、未付原幣 / 本幣、稅額、稅別、發票抬頭 / 號碼 / 金額、統一編號、匯率、訂單編號、傳票 / 財務單號 每一筆應付帳款一列,依廠商代號 + 交易日期排序
會計師帳齡表 月份01 ~ 月份12 / 超過一年 / 應付帳款(下表)、前4月 / 前56月 / 前789月 / 前101112月 / 超過一年(上表彙總) 以「立帳月份距基準月份幾個月」分桶;含原幣 / 外幣 1 / 外幣 2 與匯率拆分
逾期帳齡表 應付總額 / 未逾期合計 / Day 30 ~ Over Day 720 / 逾期合計 到期日距基準日分桶;到期日尚未到者計入「未逾期合計」

金額欄位的位數

本幣金額依本位幣小數位、原幣 / 外幣金額依各幣別小數位、匯率依匯率小數位顯示(PlaceEnum 控制)。會計師 / 逾期帳齡的原幣會自動拆成最多兩種外幣(外幣 1、外幣 2),本位幣那筆匯率固定為 1。

欄位連動與附加功能

這支是純查詢報表,沒有新增 / 修改 / 刪除;它的「行為」集中在分桶演算法、頁籤連動、列印與匯出。

帳齡分桶演算法(六個期間怎麼用)

當你按 查詢,系統對每一筆未付帳款算「基準日 − 立帳日」的天數,再依六個期間累加出分界落桶:

  • 第 1 桶:≤ P1(預設 30 天)
  • 第 2 桶:≤ P1+P2(預設 60 天)
  • 第 3 桶:≤ P1+P2+P3(預設 90 天)
  • 第 4 桶:≤ P1+P2+P3+P4(預設 180 天)
  • 第 5 桶:≤ …+P5(預設 360 天)
  • 第 6 桶:≤ …+P6(預設 720 天)
  • 超過第 6 桶:歸入「超過一年」

所以改六格期間會直接改變帳齡桶的天數分界,欄頭文字也會跟著條件動態產生(GetHeaders)。立帳日無法解析者一律歸入「超過一年」桶。

各頁籤的演算法差異

  • 帳齡分析表 用「基準日 − 立帳日期」分桶,並在最後補一列全部廠商的 Total: 合計;總未付帳款為 0 的廠商不顯示。
  • 未付帳款彙總 不看帳齡天數,改用 結帳年度/月份 比帳款期別:小於本期=前期未結款、等於=本期應付款最新未結款 = 總未付 − 前期 − 本期。五個欄位全為 0 的廠商會被剔除。
  • 會計師帳齡表 用「基準月份 − 立帳月份」的月份差分桶(同月=月份01、上月=月份02…),並把每家廠商的原幣彙總成「原幣金額 / 外幣 1 / 外幣 2 + 換算本幣 + 匯率」。
  • 逾期帳齡表 改用「基準日 − 到期日」分桶;到期日還沒到(差 ≤ 0)的金額計入「未逾期合計」,其餘才落入 Day 30 ~ Over Day 720。

頁籤連動(點廠商帶明細)

當你在「帳齡分析表」「未付帳款彙總」「會計師帳齡表」上點選某一廠商列,系統會用該廠商代號去 lookup 對應的逐筆明細,自動刷新下方子表(SelectedItem 連動)。換頁籤不需重查。

外幣彙總

當你查到同一廠商有多種幣別的未付款,系統會把它彙總成最多兩種外幣(外幣 1、外幣 2)加上本位幣:本位幣那筆匯率固定 1;外幣以「本幣未付 ÷ 原幣未付」回推匯率,原幣為 0 時匯率取 1,避免除以 0。此邏輯套用在會計師帳齡表與逾期帳齡表。

列印(IPrintSource / GetReports)

列印 / 預覽 時,本程式提供三張 FastReport 報表(GetReports):

報表編號 報表抬頭 內容
I140-1 帳齡分析表 對應「帳齡分析表」頁,帶六段帳齡欄頭文字(H1~H7 由條件動態組)
I140-2 未付帳款-彙總表 對應「未付帳款彙總」頁的廠商彙總
I140-1 未付帳款-明細表 對應未付帳款明細

只有當「帳齡分析表」有資料(ApAges.Count > 0)時才視為有可列印資料。

匯出 Excel(IExcel / GenerateExcel)

匯出 Excel 會一次把六個工作表寫入同一個 Apage 活頁簿:

  1. 帳齡分析表
  2. 未付帳款彙總表
  3. 未付帳款明細表
  4. 會計師帳齡表
  5. 逾期帳齡表
  6. 會計師簡表 —— 對應 VFP pay_qry1 報表別=會計師簡表的精簡欄位:立帳日期、傳票號碼、帳款單號(=財務單號)、廠商代號、廠商簡稱、幣別、原幣餘額(=未付原幣)、本幣餘額(=未付本幣)、到期日;只收未付原幣不為 0 的列,依廠商代號 + 立帳日期排序。

VFP「報表別」其實是匯出選項

VFP 舊版的「報表別(一般 / 會計師簡表)」並非資料過濾條件,而是匯出時的欄位精簡選項。新版改成在 Excel 直接多帶一張「會計師簡表」工作表,不需在 UI 切換報表別。

會計師 24 個月帳齡表(表A)規劃中

VFP 另有會計師 24 個月帳齡(表A)與蘇州專屬版本,屬公司特定客製,新版預設未提供,需要時請向系統商提出。

常見問題

查不到任何資料、或某廠商沒出現?

本表只彙整已過帳且尚未沖平的應付帳款:總未付(與彙總頁的五個欄位)全為 0 的廠商會被自動剔除。請確認:該廠商在 PaymntPayapply 有未付清的應付資料、且廠商代號落在你設定的起訖區間(注意上界預設 zzzzzz)。

帳齡桶的天數跟我想的不一樣?

六格「期間」是各段天數而非累計分界,系統會自己累加:預設 30/30/30/90/180/360 算出來的分界是 30、60、90、180、360、720 天。要改成等距月份就把六格都填 30。欄頭文字會隨你填的數字動態變動。

「現有餘額」和「截止日期」查出來的金額不同?

兩者帳齡基準日不同:現有餘額 用今天、截止日期 用你輸入的那天。基準日一變,落桶、外幣換算與會計師 / 逾期帳齡都會跟著變。詳見欄位連動與附加功能

未付帳款彙總頁的「前期 / 本期」分錯了?

前期 / 本期的分界由 結帳年度 / 結帳月份 決定(預設上個月),比對的是每筆的「帳款期別」。月初查詢若想看上一結帳期,請確認年月停在正確的期別。最新未結款 = 總未付 − 前期 − 本期

會計師簡表頁籤在哪?怎麼只在 Excel 看到?

「會計師簡表」不是畫面上的頁籤,而是 匯出 Excel 時多帶的一張工作表(精簡 9 欄、僅未付原幣 ≠ 0)。畫面上的五個頁籤分別是帳齡分析、未付彙總、未付明細、會計師帳齡、逾期帳齡。

外幣的匯率欄看起來怪怪的?

會計師 / 逾期帳齡的匯率是用「本幣未付 ÷ 原幣未付」回推的平均匯率,不是當日牌告;原幣為 0 時系統會把匯率設為 1 以避免除以 0。本位幣的列匯率固定為 1。

相關功能


需補截圖清單

以下截圖待 runtime 驗收後補拍(放 docs/I-ARAP/images/):

  1. pay_qry1-step1.png — 左側條件面板(查詢別 / 期間六格 / 廠商起訖 / 結帳年月)+右側五頁籤全貌
  2. pay_qry1-step2.png — 帳齡分析表頁(含 Total 合計列與下方廠商明細子表)
  3. pay_qry1-step3.png — 匯出 Excel 後的多工作表(特別是「會計師簡表」工作表)