跳轉到

程式資訊

  • 程式 IDBalanceCondition
  • 所屬子系統:N.總帳管理
  • 狀態:stable

資產負債表查詢條件

功能簡介

「資產負債表查詢條件」是資產負債表(N-160)查詢前的條件設定面板,本身不是一支獨立程式——它與資產負債表共用同一個 ProgramClass(BALANCE),由 BalanceConditionViewModel 提供查詢參數,再交給資產負債表的 查詢 動作執行。

會計人員在編製或檢視資產負債表前,先在這個面板上指定結算到哪一天用哪一種幣別彙總、以及報表上的科目名稱要顯示中文還是英文,按資產負債表工具列的 查詢 後,系統便依這三項條件結算各科目期初餘額與期間借貸,產出資產 = 負債 + 權益的平衡表。

本頁與資產負債表是同一支程式

本面板沒有自己的功能編號或選單入口,所有結果欄位、報表格式(報告式/帳戶式/含%/比較表)與列印操作都在母程式。本頁只完整說明三個條件欄位與其連動;查詢結果與列印請見 資產負債表

前置需求

  • 權限:N.總帳 → N-160 資產負債表 的瀏覽(查詢)權限。條件面板隨母程式一併開啟,不需另外授權。
  • 基礎資料 / 參數:條件本身只需輸入日期與選項,但結算結果是否正確取決於下列資料——
資料 影響的結果
會計科目表(ACCL,含大/中分類、借貸別、中英文科目名稱) 各科目的彙總、分類歸屬,以及「科目名稱顯示」切英文時的英文名稱來源
會計參數表「本期損益」科目(_prgpar 代碼 2015) 本期損益的歸戶科目;缺漏會導致本期損益無法併入平衡表
會計參數表「會計開帳月份」(_prgpar 代碼 2008) 查無歷史傳票時,期初餘額的起算基準日
已過帳傳票(SLIY,是否過帳=Y) 期初餘額與期間借貸的資料來源;未過帳的傳票不列入

操作步驟

  1. 從選單開啟資產負債表,畫面上方即顯示本條件面板。
  2. 輸入截止日期:結算到此日(含)為止的所有已過帳傳票。預設為今天
  3. 選擇幣別功能幣(預設)/本幣集團幣,決定借貸金額以哪一種幣別欄位彙總。
  4. 選擇科目名稱顯示科目名稱(中文)或 英文科目名稱。預設依登入使用者的語系自動帶入。
  5. 按資產負債表工具列的 查詢,系統依上述條件結算並在下方頁籤顯示資產負債表與比較表。

小技巧

改了任一條件後,直接再按一次母程式的 查詢 即可重算,不必重開畫面。

欄位說明

欄位 必填 說明/格式/預設
截止日期 短日期格式(YYYY/MM/DD)。預設帶系統今天。結算所有「傳票日期 ≤ 截止日期」且已過帳的傳票。
幣別 單選:功能幣本幣集團幣。預設 功能幣。決定期初餘額與期間借貸取用哪一組金額欄位。
科目名稱顯示 單選:科目名稱(中文)/英文科目名稱。預設=登入者語系(中文使用者預設中文、英文使用者預設英文)。

欄位連動與附加功能

這一節說明「輸入或切換某欄位後,查詢時系統會怎麼算」。三個條件都是直接寫入查詢參數(BalanceQueryParameters),在按下母程式 查詢 時生效:

  • 截止日期 → 決定結算範圍與期初基準

    • 當你輸入截止日期,系統會以「傳票日期 ≤ 截止日期」抓取所有已過帳傳票作為期間異動。
    • 系統會先反查截止日期之前最近一筆傳票日期當作期初基準日;若查無任何歷史傳票,則改用會計參數「會計開帳月份」(_prgpar 2008)當期初。也就是說,沒有歷史資料的新帳套,期初餘額會從開帳月份起算。
    • 日期欄位採 TsDateTextBoxV2 控件並開啟例外驗證,輸入非法日期會即時提示,不會帶錯誤值進查詢。
  • 幣別 → 決定借貸金額取哪一欄

    • 功能幣:期初與期間的借貸取功能幣金額欄位(FunctionalCurrencyDebits / FunctionalCurrencyCredits)。
    • 本幣:改取本幣借貸欄位(Debits / Credits)。
    • 集團幣:改取集團幣借貸欄位(GroupDebits / GroupCredits)。
    • 切換幣別只改變彙總時讀取的金額欄位,不改變抓取的傳票範圍;同一份傳票在不同幣別下會呈現不同的餘額。

    為什麼預設是功能幣

    系統把「指定幣別」對應到帳套的功能幣,因此預設帶 功能幣。需要看本位幣或集團合併口徑時再手動切換即可。

  • 科目名稱顯示 → 決定報表上的科目文字語言

    • 科目名稱:彙總後各科目的科目名稱、大分類、中分類以中文呈現。
    • 英文科目名稱:同樣三個欄位改取會計科目表(ACCL)的英文名稱、英文大分類、英文中分類
    • 此選項只切換顯示文字,不影響金額計算;對應母程式報表清單中的「帳戶式-英文」「帳戶式(含%)-英文」等英文版式。
    • 預設值在進入畫面時由 BalanceConditionViewModel 依登入者語系自動設定,因此英文使用者開啟即為英文。
  • 平衡邏輯(由條件帶動,於查詢時自動完成)

    • 系統依截止日結算後,會自動計算資產總計(科目代號 1 開頭)、負債總計2 開頭)、負債與權益,並把損益科目(4 開頭)彙總成本期損益併入權益側,使資產 = 負債 + 權益達成平衡。
    • 餘額為 0 的科目會被自動濾除,不會出現在結果中。
    • 這些都不需另外設定,純粹由上述三個條件帶動。

面板上沒有「查詢」按鈕

本條件面板只負責收集參數,查詢動作由母程式資產負債表的工具列觸發。比較表(近年度資產負債表比較)也由母程式在同一次查詢中一併產出。

常見問題

改了截止日期或幣別,金額卻沒變?

條件面板只是把參數寫進查詢參數物件,必須再按一次母程式工具列的 查詢 才會重算。切換幣別、改日期、改語言後都要重新查詢。

查出來的資產負債表不平衡(資產 ≠ 負債 + 權益)?

最常見原因是會計參數表的「本期損益」科目(_prgpar 2015)未設定或設錯,導致損益無法併入權益側。其次是有傳票尚未過帳(系統只計入「是否過帳=Y」的傳票)。請先確認參數與過帳狀態。

新帳套查不到期初餘額?

系統先反查截止日之前最近一筆傳票當期初基準;若帳套還沒有任何歷史傳票,會改用會計參數「會計開帳月份」(_prgpar 2008)當起算點。請確認該參數已維護。

切到英文後科目名稱還是中文(或空白)?

英文名稱取自會計科目表(ACCL)的英文欄位。若某科目沒有維護英文名稱/英文大分類/英文中分類,該科目在英文模式下會顯示為空白或回退。請至會計科目表補齊英文欄位。

為什麼預設帶今天、功能幣、目前語系?

這三個預設值寫在查詢參數的初始化(ResetToDefault)與條件 VM 建構中:截止日期=系統今天、幣別=功能幣、科目名稱顯示=登入者語系。可隨時手動覆蓋。

相關功能


需補截圖清單

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

  1. balancecondition-step1.png — 條件面板全貌(截止日期、幣別、科目名稱顯示三組欄位)
  2. balancecondition-step2.png — 幣別三選一(功能幣/本幣/集團幣)與科目名稱顯示中英文切換的特寫