跳轉到

程式資訊

  • 程式 IDBankflow
  • 所屬子系統:O.銀行票據
  • 狀態:stable

資金流量預估表

功能簡介

「資金流量預估表」把目前各銀行帳戶的餘額,加上截止日期以前所有預期的資金進出(應收/應付票據的預兌、資金預估、未沖完的應收應付帳款),逐日累計成一張「未來結餘走勢表」。財務/出納主管用它在一段期間內回答三件事:

  1. 各帳戶現在有多少錢?換算本幣是多少?(現有原幣/本幣餘額
  2. 截止日期前還會有哪些錢進出、哪一天進出?(個別帳戶 / 個別彙總明細)
  3. 把全部帳戶合起來看,公司整體的資金結餘到哪一天會見底?(全部銀行帳戶頁籤的折線圖與基準線警示)

資料來源橫跨四塊:應收票據(票據收款)、應付票據(票據付款)、資金預測的人工預估,以及尚未沖完的應收應付帳款。它是一張純查詢報表,不會異動任何單據。

前置需求

  • 權限:O.銀行票據 → O-110 資金流量預估表 的瀏覽/列印權限。
  • 基礎資料:結果的完整度取決於下列資料的維護狀況——
資料 影響的結果
銀行帳戶餘額(銀行每日對帳 / 銀行帳戶查詢 各帳戶的現有原幣餘額與「期初」起算點
應收票據(票據收款,票況 CA 庫存 / CB 託收) 明細的存入(票據存入)列
應付票據(票據付款,票況 CP 庫存 / CQ 在途) 明細的提出(票據兌現)列
資金預估(資金預測 明細的預估列(存入/提出)
未沖完應收應付帳款(帳款管理,本幣應收付 > 沖帳本幣) 「帳款」虛擬帳戶的應收/應付列
匯率資料(匯率設定 帳戶現有本幣餘額的換算匯率;以及條件選「匯率表」時票據/預估的外幣換算匯率

「帳款」是虛擬帳戶

未沖完的應收應付帳款不屬於任何一個真實銀行帳戶,系統會用一個名為 帳款 的虛擬帳戶(依幣別各一筆)把它們列進資金流量,讓你連同票據、預估一起估算未來結餘。

操作步驟

本表是純查詢,操作集中在左側條件面板(BankflowCondition)與工具列的 查詢列印

條件面板

步驟① 設定查詢條件

  1. 輸入 截止日期:要預估到哪一天。系統會把「今天 ~ 截止日期」之間所有預期進出都算進來。預設為今天 +2 個月
  2. 選擇 匯率別(外幣換算用):
    • 立帳日期:用票據/預估單據建立當下的立帳匯率(預設)。
    • 匯率表:改用匯率設定裡「3.其他」類別、截止日期當天的買入匯率重新換算。
  3. 輸入 基準線(資金警戒線):設一個本幣金額當作安全水位,預設 0(代表不警示)。設定後,全部銀行帳戶頁籤裡結餘金額低於這條線的列會以紅底標示,折線圖也會畫一條紅色水平警示線。詳見欄位連動與附加功能

步驟② 執行查詢

按工具列的 查詢,結果分成三個頁籤:

  1. 個別銀行帳戶:上半部是各帳戶的餘額與預估彙總(現有原幣餘額/現有本幣餘額/預估金額/差異金額);點選上半部某一帳戶,下半部會帶出該帳戶的逐筆資金進出明細(含每筆的結餘原幣/結餘金額),以「期初」起算往後累計。
  2. 個別銀行匯總:同樣上半部選帳戶、下半部看明細,差別在下半部是同帳戶同日合併成一列的彙總(同一天的票據存入/票據兌現/預估會併成一列、說明欄標示性質)。
  3. 全部銀行帳戶:把所有帳戶合計成一張公司整體的逐日資金流量,左邊是明細格線、右邊是結餘金額折線圖+基準線紅色警示線。

查詢結果三頁籤

切換帳戶不必重查

「個別銀行帳戶」與「個別銀行匯總」頁籤上半部點不同帳戶,下半部明細是即時連動的,不需要重新按 查詢。只有改了截止日期、匯率別才需要重查;只改基準線則折線圖/紅底會即時更新。

步驟③ 列印 / 匯出 Excel

工具列 列印 提供三張報表(依當前資料即時帶入):

報表編號 報表抬頭 對應頁籤
O110-1 個別帳戶資金預估表 個別銀行帳戶(逐筆明細)
O110-2 個別帳戶資金彙總預估表 個別銀行匯總(同日合併)
O110-3 全部帳戶資金預估表 全部銀行帳戶

各頁籤的格線都可在格線上按右鍵 → 匯出 Excel

欄位說明

查詢條件(BankflowCondition)

欄位 必填 說明/格式/預設
截止日期 預估的最後一天;格式 YYYY/MM/DD。預設 = 今天 +2 個月DateTime.Now.AddMonths(2)
匯率別 立帳日期(預設,用單據立帳匯率)或 匯率表(用匯率表「3.其他/買入」重算)。只影響外幣的本幣換算
基準線 本幣資金警戒線,預設 0(=不警示);> 0 才會啟用全部帳戶頁的紅底與折線警示

帳戶彙總列(個別銀行帳戶 / 個別銀行匯總 上半部)

欄位 說明
帳戶代號 / 帳戶簡稱 各銀行帳戶;應收應付帳款顯示為虛擬帳戶 帳款
幣別 帳戶幣別
現有原幣餘額 截止日期當下該帳戶的原幣餘額(來自銀行對帳資料)
匯率 截止日期當天該幣別的「3.其他/買入」匯率(U_Blrate);本幣帳戶通常為 1。「帳款」虛擬帳戶無餘額,此欄為 0
現有本幣餘額 = 現有原幣餘額 × 匯率(四捨五入到本幣小數位)
預估金額(帳戶預估金額) = 現有原幣餘額 + 該帳戶截止日期前所有明細的(存入原幣 − 提出原幣)
差異金額 = 預估金額 − 現有原幣餘額(即這段期間的淨進出)

明細列(下半部 / 全部銀行帳戶)

欄位 說明
日期 該筆預期進出的日期(票據用預兌日、帳款用到期日、預估用預估日期)
說明 來源性質+對象,如「應收票據,客戶簡稱,票號」「(應收帳款),客廠部簡稱,財務單號,備註」「預估,…」、首列為「期初」
存入原幣 / 提出原幣 / 結餘原幣 該帳戶以原幣計的逐筆累計結餘(自期初列起算)
幣別 / 匯率 該筆所用幣別與匯率
存入金額 / 提出金額 / 結餘金額 換算本幣後的逐筆累計結餘

全部銀行帳戶頁籤只有本幣欄位

全部帳戶頁是把所有幣別帳戶換算本幣後才合計的,所以只保留存入金額/提出金額/結餘金額(本幣)三欄,沒有原幣欄。折線圖畫的就是這條 結餘金額

欄位連動與附加功能

本節彙整「輸入某欄位 / 按某動作後,系統會做什麼」,是本頁最需要留意的部分。

截止日期決定整張表的抓取範圍

當你輸入 截止日期 並按 查詢,系統用它當所有資料來源的上界,分五段抓資料(對應後端 DARB_QRY_BANKFLOW 的五種查詢別):

  1. 帳戶餘額:抓截止日期當下各帳戶的現有原幣餘額,並用匯率設定的「其他/買入」匯率算出現有本幣餘額。
  2. 應收票據:抓今天 ~ 截止日期之間、票況為 CA(庫存)或 CB(託收)的票據收款,列為存入
  3. 應付票據:抓今天 ~ 截止日期之間、票況為 CP(庫存)或 CQ(在途)的票據付款,列為提出
  4. 資金預估:抓今天 ~ 截止日期之間的資金預測,依其存入/提出金額列入。
  5. 應收應付帳款:抓到期日 ≤ 截止日期本幣應收付 > 沖帳本幣(即還沒沖完)的 AR/AP 帳款,掛到虛擬帳戶「帳款」,AR 類列存入、AP 類列提出。

票據與預估只抓「今天以後」

票據(存入/提出)與資金預估這三段的起點是今天,不是截止日期往前推。已經過了預兌日/預估日的資料不會再列入;只有未沖完帳款是用「到期日 ≤ 截止日期」整段抓。

匯率別切換會改變外幣換算

匯率別立帳日期 時,票據(票據收款票據付款)與資金預測的本幣金額用單據建立時的立帳匯率換算;選 匯率表 時,改用截止日期當天匯率設定「3.其他」類別的買入匯率重算存入/提出金額。帳款列固定用其原單匯率、不受此選項影響。切換後要重新按 查詢 才會重算。

點選帳戶 → 下半部明細即時連動

「個別銀行帳戶」「個別銀行匯總」上半部的帳戶格線,點選某一列(SelectedItem / GroupSelectedItem)時:

  • 個別銀行帳戶 下半部立即帶出該「帳戶代號+幣別」的逐筆明細(Bankflow02)。
  • 個別銀行匯總 下半部帶出該帳戶的同日合併明細(Bankflow01)。

查詢完成時系統會自動選取第一個帳戶,所以一查完就先看到第一個帳戶的明細,不必再手動點。

期初列與逐筆結餘的算法

每個帳戶明細的第一列固定是 期初列(說明欄顯示「期初」),等於該帳戶的現有餘額;之後每一筆往下,結餘 = 上一列結餘 + 本列存入 − 本列提出,原幣與本幣各算一條(SetBalanceAmount)。這就是明細裡 結餘原幣 / 結餘金額 的來源;全部銀行帳戶頁的結餘金額則由 SetOrder 把每日淨額累加而得,也是折線圖那條線的資料。

同日多筆會被合併(個別銀行匯總 / 全部銀行帳戶)

同一帳戶同一天若有多筆進出,「個別銀行匯總」會把它們併成一列:金額相加,說明欄則依性質標上「票據存入」「票據兌現」「預估」等字樣(對應 VFP 的同日彙總邏輯)。「全部銀行帳戶」再把所有帳戶同一天的本幣金額合計成公司整體的單日進出。

基準線資金警戒線(新版特色)

這是新版相對 VFP 增加的視覺化功能,集中在全部銀行帳戶頁籤:

  1. 紅底警示:當你在條件面板把 基準線(BaseLine)設成大於 0 的金額,明細格線中結餘金額 < 基準線的列會套上半透明紅底(由 BankflowBaseLineRowBackgroundConverter 即時判斷)。基準線 = 0 時不警示、維持原色。
  2. 折線圖:右側 RadCartesianChart日期為 X 軸、結餘金額為 Y 軸畫出公司整體資金結餘走勢;同一天有多筆時,圖上只取當日最後一筆(收盤結餘)Bankflow03Chart 依日期 GroupBy 後取 Last)。
  3. 紅色警示線:圖上會畫一條對應基準線值的紅色水平線CartesianGridLineAnnotation),一眼就能看出折線在哪一天跌破安全水位。

紅底只在全部銀行帳戶頁

紅底警示只套在全部銀行帳戶頁的格線(bankflow03DataGridRowStyle);「個別銀行帳戶」「個別銀行匯總」兩頁的明細格線沒有套用基準線紅底。

改基準線不必重查

基準線是純前端比較,改完數值,紅底與紅色警示線會即時更新,不需要重新按 查詢

列印與 Excel 匯出

  • 工具列 列印GetReports)提供 O110-1~O110-3 三張報表(見步驟③),列印資料即時取自目前查詢結果(GetReportParameters 把三個來源各自轉成報表 POCO)。
  • 每個頁籤的格線都支援右鍵匯出 Excel
  • 報表來源說明若含票據號碼,列印時會把票號從說明中移除、改放票據號碼欄,避免重複顯示。

常見問題

按查詢後三個頁籤都是空的?

最常見原因是截止日期太近——票據、預估只抓「今天 ~ 截止日期」之間的資料,若這段期間沒有任何預兌票據/預估/到期帳款,明細自然是空的。請把截止日期往後拉(預設是今天 +2 個月),並確認區間內確實有對應的票據收付、資金預估或未沖完帳款。

外幣帳戶的本幣金額看起來怪怪的 / 跟總帳對不起來?

本表的本幣換算是估算值:現有本幣餘額用截止日期當天「3.其他/買入」匯率換算,票據/預估則依「匯率別」選擇用立帳匯率或匯率表換算。它的用途是預估未來結餘,不等於總帳的入帳金額。若想換一組匯率,把匯率別改成 匯率表 再重查。

「帳款」這個帳戶是什麼?我沒有開這個銀行帳戶。

「帳款」是系統虛擬出來的帳戶,用來把未沖完的應收應付帳款帳款管理)一起納入資金預估。它依幣別各列一筆,不是真實銀行帳戶,也不會出現在銀行帳戶主檔裡。

基準線設了卻沒看到紅底或警示線?

請確認三點:(1) 基準線必須大於 0,設 0 代表停用警示;(2) 紅底與折線警示線只出現在全部銀行帳戶頁籤,個別帳戶/匯總兩頁的明細不會變紅;(3) 要有結餘金額低於基準線的列才會變紅。若整段期間結餘都在水位以上,就不會有紅色。

預估金額和差異金額是怎麼算的?

預估金額 = 該帳戶現有原幣餘額 + 截止日期前所有明細的(存入原幣 − 提出原幣);差異金額 = 預估金額 − 現有原幣餘額,也就是這段期間的淨進出。若某帳戶在區間內完全沒有票據/預估/帳款,預估金額會等於現有餘額、差異為 0。

為什麼有些票據沒被列進來?

票據只抓特定票況:應收票據限 CA(庫存)、CB(託收);應付票據限 CP(庫存)、CQ(在途)。已兌現、退票、作廢等其他票況不會列入資金流量。可到票據查詢(收款)票據查詢(付款)確認票況。

相關功能


需補截圖清單

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

  1. bankflow-step1.png — 條件面板(截止日期 / 匯率別 / 基準線)
  2. bankflow-step2.png — 查詢結果三頁籤,建議以「全部銀行帳戶」頁為主畫面,呈現結餘折線圖、基準線紅色警示線與跌破水位的紅底列