程式資訊
- 程式 ID:
Paymntpq - 所屬子系統:I.帳款管理
- 狀態:stable
應付列印(應付對帳/結帳列印)¶
功能簡介¶
「應付列印」是以廠商+幣別為單位,把某一帳款期別的應付帳款彙整成可對帳、可結帳、可列印的查詢報表。它不建立任何單據,只讀取既有的應付帳款(應付帳款)與沖帳(付款單)資料,重新整理成四種觀點,供會計人員月結對帳、印應付對帳單寄給廠商、或核對單筆進貨明細時使用。
查詢結果分成四個頁籤,由概觀到明細逐層展開:
- 彙總表:每家廠商每種幣別一列,顯示預付、前期、本期進銷退貨、沖帳、本期應付、總計(同時列原幣與本幣)。
- 結帳單:選定廠商後,列出該廠商本期每一張帳款單(發票)的金額、稅額、應付、沖帳、未付。
- 明細對帳單:選定廠商後,再下鑽到每張帳款單的進貨品項明細(品號、數量、單價、含稅未稅)。
- 產品明細:依日期區間,列出各品號的進貨數量與單價(資料來源為另一支 SP
TWORK_QRY_PAYMNTPQSKU,與前三頁的帳款期別口徑不同)。
前置需求¶
- 權限:I.帳款管理 →
I-070 應付列印的瀏覽與列印權限。 - 基礎資料:查詢結果的完整度取決於下列資料的維護與過帳狀況——
| 資料 | 影響的結果 |
|---|---|
| 應付帳款(已立帳) | 彙總表、結帳單、明細對帳單的所有金額來源 |
| 付款單(沖帳記錄) | 各頁的沖帳、未付金額 |
| 廠商主檔(簡稱、名稱、統編、地址、收付條件) | 列印抬頭、廠商資訊;收付條件描述由系統帶出 |
| 進貨/採購明細 | 明細對帳單與產品明細的品號/品名/數量/單價 |
| 幣別與匯率設定 | 原幣與本幣換算、小數位數 |
操作步驟¶
步驟一 設定查詢條件¶
在左側條件面板輸入條件:
- 輸入帳款期別(YYYYMM,預設為「上個月」)。這是本查詢的主軸,彙總/結帳/明細三頁都以此期別為準。
- 視需要輸入發票送達日(預設今天)。此欄不影響查詢結果,只會印在「應付明細對帳單」報表抬頭上(發票寄達日)。
- 設定起始廠商代號/截止廠商代號:用廠商查詢控件挑選範圍。起始預設空字串、截止預設
zzzzzzzzzz,即不限廠商、全部撈出。 - 輸入起訖日期(產品明細):預設「去年今天~今天」。此區間只供「產品明細」頁使用,與帳款期別無關。
- 視需要勾選下列選項(詳見欄位連動與附加功能):
- 已付足款項不顯示(預設不勾)
- 付款明細表含前期(預設不勾)
- 含其他金額(預設勾選)
- 含退貨金額(預設勾選)
- 選擇資料別:
應付帳款或損害賠償單(預設應付帳款)。
步驟二 執行查詢¶
按工具列的 查詢。系統呼叫 DARB_QRY_PAYMNTPQ 取回原始帳務資料,於本機重算後填入四個頁籤。
注意
帳款期別未填會擋查詢——系統會跳出「請輸入帳款期別」的提示,不會回傳任何資料。
步驟三 在頁籤間下鑽對帳¶
- 彙總表:總覽各廠商各幣別的應付情形。每列左側有
是否列印勾選框,預設全部勾選;取消勾選的列不會進入「應付彙總表」報表。 - 結帳單:先在左側清單點一家「廠商+幣別」,右側才會顯示該組合本期的每張帳款單。
- 明細對帳單:同樣先在左側點選「廠商+幣別」,右側顯示該組合下每張帳款單的進貨品項明細。
- 產品明細:不需選廠商,直接依條件面板的「起訖日期(產品明細)」呈現各品號彙整。
步驟四 列印或匯出¶
- 在彙總表頁勾選要印的廠商列(
是否列印)。 - 按工具列
列印/預覽,選擇報表(共 7 張,見欄位連動與附加功能)。 - 各頁籤格線皆可右鍵匯出 Excel。
小技巧
改了條件(例如換帳款期別、調整起訖日期、切換資料別)後,直接再按一次 查詢 即可重算,不必離開頁面。
欄位說明¶
查詢條件(左側面板)¶
| 欄位 | 必填 | 說明/格式/預設 |
|---|---|---|
| 帳款期別 | ✔ | YYYYMM。預設 DateTime.Now.AddMonths(-1)(上個月)。彙總/結帳/明細三頁的主軸 |
| 發票送達日 | — | 預設今天。僅印在明細對帳單報表抬頭,不影響查詢 |
| 起始廠商代號 | — | 預設空字串(不限下界) |
| 截止廠商代號 | — | 預設 zzzzzzzzzz(不限上界) |
| 起始日期 / 截止日期(產品明細) | — | 預設「去年今天 ~ 今天」。僅供產品明細頁 |
| 已付足款項不顯示 | — | 預設不勾。勾選時隱藏已全額付清的廠商 |
| 付款明細表含前期 | — | 預設不勾。是否把前期資料一併帶入明細 |
| 含其他金額 | — | 預設勾選。產品明細是否計入其他金額 |
| 含退貨金額 | — | 預設勾選。產品明細是否計入退貨 |
| 資料別 | ✔ | 應付帳款(預設)或 損害賠償單 |
結果頁籤主要欄位¶
| 頁籤 | 欄位 | 說明 |
|---|---|---|
| 彙總表 | 是否列印 | 勾選框,預設勾選;只有勾選的列進入彙總表報表 |
| 原幣/本幣 各期金額 | 預付貨款、前期金額、本期進銷、本期退貨、其他、本期沖帳、本期貨款、下期…、稅額、總計 | |
| 原幣本期貨款 | =本期進銷-本期退貨-本期沖帳(唯讀計算欄) | |
| 原幣總計 | =前期金額+本期貨款+下期貨款-預付貨款+其他(唯讀計算欄) | |
| 結帳單 | 單據分類/帳款單號/發票號碼/發票日期 | 該廠商本期每張帳款單 |
| 原幣貨款/稅額/原幣應付/沖帳原幣/未付原幣 | 原幣金額;另有對應的本國幣欄位 | |
| 未付原幣 | =原幣應付-沖帳原幣(本幣同理) | |
| 明細對帳單 | 年度月份/帳款單號/單號/發票號碼/採購單號 | 帳款單下鑽到的進貨/採購來源 |
| 品號/品名/數量/單價 | 進貨品項 | |
| 本幣未稅/本幣含稅/原幣單價/原幣未稅/原幣含稅 | 各幣別未稅與含稅金額 | |
| 產品明細 | 廠商類別/廠商代號/廠商名稱/帳款別/帳款期別 | 來自 TWORK_QRY_PAYMNTPQSKU SP(Twork_Qry_PaymntPqSKUBll) |
| 品號/品名/幣別/數量 | 品項彙整 | |
| 原幣單價/其他金額/原幣未稅/單價/本幣未稅 | 單價與金額 |
欄位連動與附加功能¶
這是本頁最關鍵的一節。應付列印的金額並非單純照搬資料庫,而是在 ApPrint_cyBll 內依「期別/單據分類」重算,並有多處主從連動。
條件面板的連動¶
- 帳款期別空白 → 擋查詢:按
查詢時若帳款期別為空白,系統回「請輸入帳款期別」並中止,四個頁籤維持空白。 - 已付足款項不顯示:勾選後,重算完成時系統會比對結帳單與明細,把「在結帳單與明細都沒有任何未付資料」的廠商整列從左側「廠商+幣別」清單移除,讓你只看到還有欠款的廠商。
- 含其他金額/含退貨金額:這兩個勾選只傳給「產品明細」頁的 SP(
IncludeOtherAmounts/IncludeReturns),決定產品明細是否把其他金額、退貨數量計入;不影響彙總表、結帳單、明細對帳單。 - 資料別(應付帳款/損害賠償單):以代碼(1/2)傳入 SP,決定撈取的帳款類型;切換後需重新
查詢。 - 起訖日期(產品明細):同樣只供產品明細 SP,與帳款期別互不影響——所以產品明細頁的金額口徑可能與前三頁不同,這是設計而非錯誤。
彙總表的金額怎麼算¶
系統把同一廠商+幣別的所有帳款,依期別標籤分桶加總:
- 預付貨款=期別「預付」的(應收付-沖帳)。
- 前期金額=期別「前期加項」減「前期減項」。
- 本期進銷/本期退貨=對應期別的應收付。
- 其他=「本期加項」減「本期減項」。
- 稅額/本期沖帳=進銷與加項為正、退貨與減項為負後加總。
- 本期貨款(唯讀)=本期進銷-本期退貨-本期沖帳。
- 總計(唯讀)=前期金額+本期貨款+下期貨款-預付貨款+其他。
當你看到某廠商沒有出現在彙總表,是因為它的上述各項金額全部為 0 時會被略過。
結帳單/明細對帳單的主從連動¶
- 左側點選驅動右側:結帳單與明細對帳單左側都是「廠商+幣別」清單。當你點選一列,VM 以「廠商代號+幣別」為鍵即時把右側換成該組合的資料(
CheckVendorSelectedItem/DetailVendorSelectedItem);取消選取則右側清空。兩頁的選取彼此獨立。 - 應付方向轉換:結帳單在組裝時,若該筆是「應付減項」或「應收加項」(單據分類),系統會把原幣貨款、稅額、應付、沖帳、未付全部取負號,使對帳方向正確。
- 未付金額:未付原幣=原幣應付-沖帳原幣;未付本幣=本幣應付-沖帳本幣。
- 原幣貨款扣稅:當匯率不為 0 時,原幣貨款會先扣掉「稅額÷匯率」(依幣別小數位四捨五入),讓原幣貨款為未稅口徑。
- 明細單價換算:明細列的本幣單價=匯率為 1 時等於原幣單價,否則=原幣單價×匯率(四捨五入到 2 位);其他金額本幣=原幣其他金額×匯率(四捨五入到整數)。
- 折讓單(單號開頭 83)特例:當帳款單號以折讓單前置碼(
RpdefEnum._83)開頭時,系統改用明細自身的發票號碼/發票日期,並把採購單號設為帳款單號、稅額改取明細稅額。
列印報表(GetReports / IPrintSource)¶
本表單實作 IPrintSource,列印/預覽 時可選下列 7 張報表(抬頭如下):
| 報表編號 | 報表抬頭 | 對應頁籤 |
|---|---|---|
| I070-1 | 應付彙總表-原幣 | 彙總表 |
| I070-2 | 應付彙總表-本幣 | 彙總表 |
| I070-3 | 應付結帳單-原幣 | 結帳單 |
| I080-4 | 應付結帳單-本幣 | 結帳單 |
| I070-5 | 應付明細對帳單-原幣 | 明細對帳單 |
| I080-6 | 應付明細對帳單-本幣 | 明細對帳單 |
| I070-7 | 產品明細 | 產品明細 |
列印時的連動重點:
- 彙總表報表只印勾選列:報表來源只取彙總表中
是否列印 = true的廠商列。要少印幾家,回彙總表取消勾選即可。 - 明細對帳單報表會過濾:報表來源只保留「本期進貨或本期退貨不為 0」的列,並依排序鍵排序;另外把收付條件號透過系統描述轉成文字、帶入公司地址/電話/統編/聯絡人/Email 等抬頭資訊(取自廠商主檔)。
- 發票寄達日:明細對帳單報表抬頭的發票寄達日,取自條件面板的「發票送達日」。
規劃中/尚未提供
程式內保留了一份「依寄送地址分組的結帳彙總」(GroupZD,含支票金額、銀行/現金沖帳、收付款日期等欄位)的計算結果,但目前四個頁籤的畫面未顯示這份資料,也沒有對應的可勾選報表。它屬於後台預留結構,一般使用者操作時看不到。
常見問題¶
按查詢沒反應 / 跳出「請輸入帳款期別」?
帳款期別是必填。請先在條件面板填入 YYYYMM(預設會帶上個月),再按 查詢。其他條件可留空。
結帳單/明細對帳單右側是空的?
這兩頁是主從連動:要先在左側的「廠商+幣別」清單點選一列,右側才會顯示該廠商本期的帳款單或進貨明細。沒有選取時右側保持空白。
某家廠商沒有出現在彙總表?
當該廠商該幣別的預付、前期、本期進銷退貨、其他、稅額、沖帳等金額全部為 0 時會被略過。另外若勾了已付足款項不顯示,已全額付清、沒有任何未付的廠商也會從清單中移除。
產品明細頁的金額跟前三頁對不起來?
這是正常的。產品明細是另一支 SP 的結果,用的是條件面板的「起訖日期(產品明細)」與「含其他金額/含退貨金額」勾選,跟前三頁以「帳款期別」為主軸的口徑不同,兩者本來就不會逐筆相等。
原幣貨款比發票金額少了一截?
結帳單的原幣貨款是未稅口徑——當匯率不為 0 時,系統會先把「稅額÷匯率」從原幣金額中扣除。含稅金額請看原幣應付欄位。
列印彙總表時印出了不想要的廠商?
彙總表報表只印 是否列印 有勾選的列。請回彙總表頁取消不需要的廠商列勾選,再重新列印。
相關功能¶
需補截圖清單
以下截圖待功能 runtime 驗收後補拍(放 docs/I-ARAP/images/):
paymntpq-step1.png— 條件面板(帳款期別、廠商範圍、產品明細起訖日、四個勾選、資料別)paymntpq-step2.png— 彙總表頁(含「是否列印」勾選欄)paymntpq-step3.png— 結帳單頁(左側廠商+幣別清單、右側帳款單明細的主從連動)paymntpq-step4.png— 明細對帳單頁(進貨品項下鑽)paymntpq-step5.png— 產品明細頁