程式資訊
- 程式 ID:
ARAPSearch - 所屬子系統:I.帳款管理
- 狀態:stable
應收應付查詢¶
功能簡介¶
「應收應付查詢」用一個財務單號把一筆應收/應付帳款牽連到的所有單據一次攤開:上方是財務單(rp_m)主檔,下方左側是它過帳產生的會計傳票(sliy),下方右側是替它收/付款沖帳的沖帳單(rpsht)主明細。它是查詢工具,不做新增、修改與沖帳,主要供財務/會計人員追帳——想知道「這張應收(付)立帳後到底開了哪張傳票、收(付)了幾次款、沖了多少」時,輸入單號一查即見全貌,再透過格內超連結直接跳到對應的傳票或收付款單。
前置需求¶
- 權限:I.應收應付 →
應收應付查詢的瀏覽權限(frontmatterpermissions: 瀏覽)。 - 資料來源:本頁不維護任何主檔,純粹反查既有單據。查得到資料的前提是下列單據已經存在並過帳——
| 資料 | 影響的結果 |
|---|---|
| 應收/應付立帳單(rp_m,如請款、收款等) | 上方財務單清單;查不到單號就整頁空白 |
| 會計傳票(SLIY 過帳) | 下方左側傳票主檔與分錄明細;未過帳則無傳票可顯示 |
| 收款沖帳(RSHEET)/付款沖帳(PSHEET) | 下方右側沖帳主明細;尚未沖款的單據右側為空 |
操作步驟¶
本頁是單純的條件查詢頁,操作只有「設條件 → 按查詢 → 點列看關聯」三步。
步驟① 設定查詢條件¶
- 選擇 QueryType:
AR(應收)或AP(應付)。預設為AR。 -
在 FinancialDocNo 起訖欄輸入要查的財務單號區間。
只查一張單時不必輸兩次
在起始單號欄輸入後,系統會自動把相同的值帶進結束單號欄(見欄位連動與附加功能),所以查單筆時只要填左邊那格即可;要查一段範圍時再手動改結束欄。
-
按工具列的
查詢。
步驟② 檢視財務單清單(上方格)¶
查詢成功後,上方格列出符合條件的財務單,每列包含財務單號、財務類別、交易日期、發票號碼、客戶/廠商、應收付金額(DueAmount)、已收付金額(PaidAmount)與總帳傳票號(GeneralLedgerNo)。
沒有資料時
若區間內查不到任何財務單,系統會跳出「無資料」訊息,三個關聯區塊一併清空。
步驟③ 點選財務單,展開關聯單據¶
點選上方某一列財務單,下方兩區會同步帶出它的關聯資料:
- 左下(會計傳票):顯示該財務單對應的傳票主檔(傳票號碼 GeneralLedgerNo、過帳日期 BookingDate、pkid)與其分錄明細(科目、借貸方金額、客廠代號等)。
- 右下(收付沖帳):顯示替這張財務單收/付款的沖帳單主檔(收付款單號、日期、支票金額 ChequeAmount、電匯金額 TTAmount、回轉傳票號)。再點選某一張沖帳單,其下方會展開該沖帳單的傳票分錄明細。
步驟④ 透過超連結跳轉¶
清單中藍色超連結欄位可直接跳到來源單據(詳見欄位連動與附加功能):
- 財務單/沖帳單的 GeneralLedgerNo/回轉傳票號 → 開啟總帳傳票(SLIY)。
- 沖帳單的 收付款單號 → 依收付款別開啟付款沖帳(PSHEET)或收款沖帳(RSHEET)。
欄位說明¶
查詢條件¶
| 欄位 | 必填 | 說明/格式/預設 |
|---|---|---|
| QueryType | ✔ | AR(應收)/AP(應付)二選一,預設 AR。對應送進 SP 的查詢別參數(AR=0、AP=1) |
| FinancialDocNo(起) | — | 財務單號起始;預設空字串。輸入後自動同步到結束欄 |
| FinancialDocNo(迄) | — | 財務單號結束;預設空字串。可手動改成大於起始值以查範圍 |
財務單清單(上方格)主要欄位¶
| 欄位 | 說明 |
|---|---|
| FinancialDocNo | 財務單號 |
| FinancialCategory | 財務類別(顯示類別名稱) |
| TransactionDate | 交易日期(唯讀) |
| InvoiceNo | 發票號碼 |
| CustomerOrVendor | 客廠部代號(客戶或廠商代號) |
| DueAmount | 應收/應付金額(本位幣位數) |
| PaidAmount | 已收/已付金額(本位幣位數) |
| GeneralLedgerNo | 對應總帳傳票號,超連結至 SLIY |
會計傳票(左下)欄位¶
| 區塊 | 欄位 | 說明 |
|---|---|---|
| 傳票主檔 | GeneralLedgerNo | 傳票號碼,超連結至 SLIY |
| BookingDate | 過帳(傳票)日期,唯讀 | |
| pkid | 傳票主鍵,亦可超連結至 SLIY | |
| 分錄明細 | LineNo/GLAccountCode/AccountDescription | 序號、科目代號、科目名稱 |
| Debits/Credits | 本幣借/貸方金額 | |
| CustVendCode/Doc2No | 客廠代號、相關單號 |
收付沖帳(右下)欄位¶
| 區塊 | 欄位 | 說明 |
|---|---|---|
| 沖帳主檔 | PaymentCollectionNo | 收付款單號,超連結至 PSHEET/RSHEET |
| Date | 收付款日期,唯讀 | |
| ChequeAmount | 支票金額(幣別位數) | |
| TTAmount | 電匯金額(幣別位數) | |
| GeneralLedgerNo(回轉傳票號) | 回轉傳票號 ReverseEntryGLNo,超連結至 SLIY | |
| 沖帳明細 | LineNo/GLAccountCode/AccountDescription | 序號、科目、科目名稱 |
| Debits/Credits | 本幣借/貸方金額 | |
| CustVendCode/Doc2No | 客廠代號、相關單號 |
欄位連動與附加功能¶
本頁的價值幾乎都在「點一下就帶出關聯」這組連動上。以下逐項說明真實程式碼的行為。
條件輸入¶
- 輸入起始單號 → 自動補結束單號:當你在起始 FinancialDocNo 欄輸入並離開焦點,ViewModel 會把同樣的值寫進結束欄(
BeginningFinancialDocNo的 setter 內EndingFinancialDocNo = value)。因此查單筆時只填左欄即可;要查範圍時,填完起始值後再去改右邊的結束欄。
按 查詢 時系統會做的事¶
- 以 QueryType(AR=0/AP=1)、起始單號、結束單號三個參數呼叫後端預存程序
TWORK_QRY_ARAPSEARCH,一次取回五張結果集:財務單、傳票主檔、傳票明細、沖帳主檔、沖帳明細。 - 查無資料時跳出「無資料」訊息,並把財務單清單與三個關聯區塊全部清空。
- 查得資料後,系統在記憶體內建好四組對照索引(傳票主檔以傳票號碼、傳票明細以傳票主鍵、沖帳主檔以財務單號、沖帳明細以沖帳主鍵分組),供後續逐列展開時即時取用——所以點列展開不會再連一次資料庫,反應即時。
點選財務單列(上方格)時¶
當你選取上方某一張財務單,系統會連鎖帶出它的關聯:
- 以該財務單的傳票號碼找出對應的傳票主檔並顯示於左下;找不到對應傳票時左下傳票主檔留白。
- 帶出傳票主檔後,再以傳票主鍵展開該傳票的分錄明細;沒有傳票時分錄明細清空為空清單。
- 以該財務單的財務單號找出替它收/付款的沖帳主檔清單,顯示於右下。
- 若把選取清掉(未選任何列),左下傳票與右下沖帳一併清空。
點選沖帳單列(右下主檔)時¶
選取右下某一張沖帳單,系統會以它的主鍵展開該沖帳單的傳票分錄明細於其下方;取消選取則明細清空。
超連結跳轉(點欄位文字即跳單)¶
- 財務單/沖帳單的 GeneralLedgerNo、回轉傳票號 → 以傳票號碼為關鍵欄位開啟總帳傳票 SLIY。左下傳票主檔的 pkid 也設了超連結,以主鍵方式開啟 SLIY。
- 沖帳單的 收付款單號(PaymentCollectionNo) → 目標程式會依該沖帳單的收付款別動態決定:收付款別為
P時開付款沖帳 PSHEET、為R時開收款沖帳 RSHEET(其餘值則不提供連結)。 - 上方財務單與右下沖帳格內的三個超連結欄位(GeneralLedgerNo、收付款單號、回轉傳票號)以
TsNavigateLabel呈現並套用「不翻譯」樣式,畫面上直接顯示原始單號文字;左下傳票主檔的 GeneralLedgerNo、pkid 則是唯讀文字框(TsTextBox)掛上超連結參數。
查詢頁不可編輯
本頁所有格線僅供檢視,金額、日期等欄位均為唯讀或不可改存;要修改帳務請回到對應的立帳/沖帳單據作業(請款、收款、收款沖帳、付款沖帳等)。
未提供獨立列印/匯出版面
本頁沒有專屬的條件面板(Condition)或列印版面(Print)檔,也沒有撰寫專屬的 Excel 匯出邏輯(無 GenerateExcel)。ViewModel 的 HaveReportData() 固定回傳 true,因此工具列的列印鈕仍可用,但並未對應到本頁專屬報表。若只是要把查得的資料另存,可使用 RadGridView 格線本身的右鍵匯出功能;若需正式帳務報表,請改用對應單據的列印作業(例如請款列印、收付款沖帳列印等)。
常見問題¶
輸入了單號卻整頁空白、跳「無資料」?
請先確認:(1) QueryType 選對邊(應收帳款要選 AR、應付要選 AP);(2) FinancialDocNo 的起訖區間真的涵蓋該單號(注意起始欄輸入後雖會自動帶到結束欄,但若你之後又改動過結束欄,範圍可能被縮掉);(3) 該財務單確實存在。三者皆符合仍查不到,多半是查詢別選錯邊。
上方查得到財務單,但左下傳票區是空的?
左下傳票來自該財務單已過帳產生的會計傳票。若這張立帳單尚未過帳(還沒產生傳票),自然沒有傳票可顯示。請至總帳作業確認該單是否已過帳。
右下沖帳區沒有任何資料?
右下顯示的是替這張財務單收款/付款沖帳的單據。若這筆帳款還沒收(付)款、尚未做沖帳,右下就會是空的——這代表「未沖」而非錯誤。已收付金額(PaidAmount)為 0 也是同樣道理。
點收付款單號連結,為什麼有的開付款沖帳、有的開收款沖帳?
連結目標是依該沖帳單的收付款別自動判斷的:P 開付款沖帳 PSHEET、R 開收款沖帳 RSHEET。若某列收付款別欄位是其他值或空白,該列就不會提供可點的連結。
相關功能¶
需補截圖清單
以下截圖待功能 runtime 驗收後補拍(放 docs/I-ARAP/images/):
arapsearch-step1.png— 條件面板(QueryType 單選 + FinancialDocNo 起訖欄)arapsearch-step2.png— 上方財務單清單查詢結果arapsearch-step3.png— 點選財務單後,左下傳票與右下沖帳同步展開的全畫面arapsearch-step4.png— 收付款單號/GeneralLedgerNo 超連結跳轉示意