跳轉到

程式資訊

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

應付票據查詢

功能簡介

「應付票據查詢」把公司開立給廠商的應付票據(支票、本票、匯票、L/C、電子付款)依條件撈出來,列成一張可排序、可列印、可匯出 Excel 的清單,並在畫面下方即時顯示本幣金額彙總原幣金額彙總。財務/出納人員用它回答兩類問題:

  1. 某段付款日期/到期日內,要兌付哪些票、給哪些廠商、從哪個帳戶出?(明細查詢
  2. 截至某個日期,帳上還有哪些未軋的應付票據?(餘額查詢

它是純查詢報表,不會異動任何票據資料;票據的開立與維護請見應付票據

前置需求

  • 權限:O.票據/現金 → O-090 應付票據查詢 的瀏覽、列印權限。
  • 基礎資料:查詢結果的完整度取決於下列資料的維護狀況——
資料 影響的結果
應付票據(票據主檔) 整份清單的來源;票況、到期日、帳戶等全部欄位
廠商主檔 廠商代號/廠商簡稱、廠商代號查詢條件
銀行帳戶主檔(銀行帳戶 帳戶代號/帳戶簡稱、帳戶代號查詢條件
票況代碼表(Cmb C230) 票況 下拉選單的可選項目
匯率資料 票據的立帳匯率,連帶影響本幣金額換算

操作步驟

本表單分成「條件面板」與「結果清單」兩區。先在條件面板設定範圍與查詢別,按工具列的 查詢,結果即顯示在下方格線。

步驟① 選擇查詢別

條件面板最上方有兩個查詢別,互斥切換(切換時會自動啟用/停用對應欄位,詳見欄位連動與附加功能):

  1. 明細查詢(預設):逐張列出符合條件的應付票據。
  2. 餘額查詢:列出截至餘額表日期仍在帳上的應付票據(含當下已軋出但異動日期晚於餘額表日期者)。

步驟② 設定查詢條件

  1. 明細查詢時,於下方區塊輸入起訖範圍(每列以 ~ 分隔起、迄):
    • 付款日期:預設起日帶近三個月(今天往前推三個月),迄日 9999/12/31
    • 廠商代號:用廠商查詢框選起訖廠商,留空=不限。
    • 票據號碼:可輸入起訖票號字串。
    • 到期日:預設起日同樣帶近三個月,迄日 9999/12/31
    • 帳戶代號:用銀行帳戶查詢框選起訖帳戶。
    • 票況:下拉選 All未兌現,或選某一個明確票況。
    • 票別:勾選要納入的票種——1.支票(預設勾選)/2.本票3.匯票4.L/C5.電子付款,至少勾一項。
  2. 餘額查詢時,只需輸入餘額表日期(必填,未填按查詢會被擋下)。票別勾選同樣有效。

步驟③ 執行查詢

按工具列 查詢,系統撈資料並填入下方格線,同時更新畫面左下角的彙總:

  • 本幣金額彙總:所有列的本幣金額加總(依本位幣小數位顯示)。
  • 原幣金額彙總:依幣別分組,各幣別的票據金額加總,逐段串成一行文字(例如 NTD 1200000, USD 35000)。

步驟④ 調整排序

結果清單上方有四個排序選項(單選),切換時立即在記憶體重排現有結果,不需重查:

  • 付款日期(預設)/到期日票據號碼廠商代號

步驟⑤ 列印與匯出

  1. 工具列 列印預覽 會套用報表 O090-1 應付票據一覽表 輸出目前查得的清單。
  2. 格線本身支援匯出 Excel(格線右鍵)。

小技巧

改了排序選項只重排不重查,速度很快;但改了條件(日期、廠商、票況等)一定要再按一次 查詢 才會生效。

欄位說明

查詢條件(條件面板)

欄位 必填 說明/格式/預設
查詢別 明細查詢(預設)或 餘額查詢,兩者互斥
付款日期(起) 預設今天 AddMonths(-3)(近三個月);明細查詢用
付款日期(迄) 預設 9999/12/31
廠商代號(起~迄) 廠商查詢框;起預設空、迄預設 zzzzz(=不限上界)
票據號碼(起~迄) 文字;起預設空、迄預設 zzzzz
到期日(起) 預設今天 AddMonths(-3)(近三個月)
到期日(迄) 預設 9999/12/31
帳戶代號(起~迄) 銀行帳戶查詢框;起預設空、迄預設 zzzzz
票況 下拉:All(預設)/未兌現/單一票況代碼
票別 勾選 1.支票(預設勾)/2.本票/3.匯票/4.L/C/5.電子付款
餘額表日期 餘額查詢時✔ 餘額查詢必填,預設帶今天;明細查詢時停用

結果清單主要欄位

欄位 說明
票據備註 票據上的備註文字
付款日期 票據的付款(開立)日期
廠商代號/廠商簡稱 交易對象與其簡稱
抬頭名稱 票據抬頭
帳戶代號/帳戶簡稱 出票銀行帳戶
票據號碼 票號
幣別 票據幣別
票據金額 原幣票面金額
到期日/預兌日 票據到期日與預計兌現日
票別 1.支票/2.本票/3.匯票/4.L/C/5.電子付款
票況 票況代碼+票況說明合併顯示(如 CP庫存
禁止轉讓/平行線 票面註記
異動日期/兌現日期/列印日期 各階段日期
自定欄位/對方科目/付款單號/傳票號碼/摘要/分類索引1 帶出之相關單據與分類欄位
轉入備註/轉出備註 票據轉讓進出之備註
立帳匯率 票據立帳當時匯率
本幣金額 =票據金額 × 立帳匯率,依本位幣小數位四捨五入

欄位連動與附加功能

這一節把「按某個選項/按鈕後系統會做什麼」逐條列出,全部依實際程式行為。

  1. 切到 餘額查詢 → 條件區自動切換:選 餘額查詢 時,系統會停用整個明細條件區(付款日期、廠商、票號、到期日、帳戶、票況),只啟用餘額表日期欄;切回 明細查詢 則相反。這由 QueryType 的連動(DetailConditionIsEnabled / BalanceConditionIsEnabled)控制,避免你在錯誤的查詢別下填到無效條件。

  2. 餘額查詢未填餘額表日期 → 擋下並提示:按 查詢 時若查詢別為餘額且餘額表日期空白,系統不會送出查詢,改跳出「請輸入餘額表日期」訊息要你補上。

  3. 票況下拉的三種行為:票況清單最前面被插入兩個特殊項目——All(代碼 C0)與 未兌現(代碼 C1),其餘為票況代碼表(Cmb C230)的實際票況。查詢時依選擇套不同條件:

    • All → 不額外限制票況,只依勾選的票別過濾。
    • 未兌現 → 僅撈票況為 CPCQ(庫存/在途)的票。
    • 選某一明確票況 → 僅撈該票況的票。
  4. 票別勾選 → 組成過濾字串:勾選的票別會被串成一段文字(如 ,1.支票,3.匯票,),查詢時用 CHARINDEX(票別, '...') 比對,只保留票別落在勾選清單內的票。未勾任何票別等於沒有票別符合,結果會是空的,所以至少要勾一項(預設已勾 1.支票)。

  5. 餘額查詢的「在帳」判定:餘額查詢不是單純抓某狀態,而是抓「付款日期 ≤ 餘額表日期,且(票況為 CPCQ(票況為 CRCU 但異動日期晚於餘額表日期)」的票——也就是把「在當天之後才軋掉」的票也算回當天的在帳餘額,呈現該日期當下的真實未兌票況。

  6. 本幣金額自動換算:每一列的本幣金額由系統算出=票據金額 × 立帳匯率,並依本位幣小數位數(Context.Env.LocalDecimal)四捨五入,你不需手動換算。

  7. 查詢後自動算兩種彙總:查得資料後系統會:

    • 把所有列的本幣金額加總,填入畫面左下的本幣金額彙總
    • 幣別分組group by 幣別),各幣別票據金額加總,以 幣別 金額, 格式逐段串成一行字串填入原幣金額彙總(多幣別時逐項列出,例如 NTD 1200000, USD 35000)。
  8. 排序選項即時重排(不重查):結果上方的 付款日期到期日票據號碼廠商代號 四個排序鈕,切換時直接對目前已查出的清單在記憶體重新排序(依對應欄位值),預設為付款日期。改排序不會重新查資料庫。

  9. 列印 / 報表來源:本表單實作 IPrintSource,按列印時提供報表 O090-1「應付票據一覽表」(內部名 Checkpayqry1)。報表資料就是目前清單(每列轉成報表用 POCO);清單為空時不會出報表。

  10. Excel 匯出:結果格線支援匯出 Excel(格線右鍵功能表),匯出內容即畫面上的欄位。

與 VFP 舊版的差異

VFP 舊版的起始付款日/到期日預設為空字串(不限下界)。新版刻意把起始日預設為今天往前三個月,避免一開就撈出全部歷史票據;要查更早的票請自行把起始日往前調。

常見問題

查詢結果是空白,明明帳上有票?

先檢查三件事:(1)票別是否至少勾選一項——未勾任何票別會撈不到資料;(2)付款日期/到期日起始值預設是近三個月,較早的票請把起始日往前調;(3)票況是否選到不存在的單一狀態,可改選 All 再試。

「餘額表日期」灰掉不能輸入?

餘額表日期只有在查詢別選 餘額查詢 時才會啟用;目前若停用,表示你在 明細查詢 模式。切到餘額查詢即可輸入。

按查詢沒反應、跳出要我輸入餘額表日期?

你在 餘額查詢 模式但餘額表日期是空的。系統會擋下查詢並要求補上日期,填入後再按 查詢

某列的「本幣金額」是 0 或怪怪的?

本幣金額=票據金額 × 立帳匯率。若該票的立帳匯率為 0 或未設,換算結果就會是 0。請回應付票據確認該票的立帳匯率。

原幣金額彙總為什麼有好幾段、跟本幣金額彙總不一樣?

原幣金額彙總是依幣別分別加總(同一幣別的票面金額相加),多幣別會逐段列出;本幣金額彙總則是把每張票換算成本位幣後加總。兩者口徑不同,外幣存在時數字本來就不會相等。

改了排序選項,數字會變嗎?

不會。排序只是把已查出的同一批資料重新排列,總筆數與彙總金額都不變,也不會重新連資料庫。

相關功能


需補截圖清單

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

  1. chkpayqry-step1.png — 條件面板(明細查詢)全貌,含起訖欄位、票況下拉、票別勾選
  2. chkpayqry-step2.png — 切到餘額查詢時、明細條件停用、餘額表日期啟用的狀態
  3. chkpayqry-step3.png — 查詢結果清單 + 左下本幣金額彙總/原幣金額彙總
  4. chkpayqry-step4.png — 上方四個排序選項(付款日期/到期日/票據號碼/廠商代號)