程式資訊
- 程式 ID:
BCURRENMPRINT - 所屬子系統:B.基本資料
- 狀態:stable
匯率表列印¶
功能簡介¶
「匯率表列印」是匯率表(BCURRENM)的列印伴隨頁,本身不是一支獨立維護畫面,而是從匯率表工具列按下 列印 後彈出的條件對話框。它讓使用者指定起訖單號的列印區間,套用 匯率表(報表編號 B060-1)這份 A4 報表,產出某一張或某一段匯率表單據(含買價、賣價、中價、各幣別)的紙本/PDF。
由業務、財會或任何需要把當期匯率表存檔、傳閱或附在傳票後面的人員使用。在流程上它位於「匯率表維護完成並儲存之後」——先在匯率表建好一張單,再用本頁把它印出來。
本頁與匯率表共用權限
本列印頁有自己的 ProgramClass.BCURRENMPRINT,但它在程式中以母程式 BCURRENM 的權限判斷是否可用(VM 建構時把 BCURRENM 帶進列印框架)。因此只要你能開匯率表並有其列印權限,就能使用本頁,不需另外申請。
前置需求¶
- 權限:B.基礎資料 →
B-060 匯率表的列印權限(沿用母程式 BCURRENM 的權限,本頁不另設代碼)。 - 資料:列印前必須先有可印的匯率表單據——
| 資料 | 影響的結果 |
|---|---|
| 匯率表單據(匯率表 已建立並儲存) | 沒有對應單號的匯率表,列印區間內就抓不到任何資料 |
| 匯率明細(各幣別買/賣/中價) | 報表內各幣別的匯率欄位;明細空白則報表該列空白 |
小技巧
一般不需手動到本頁設條件。直接在匯率表上把要印的那張單叫出來(移到該筆),再按 列印,系統會自動把該單號帶進起訖兩端,等於只印目前這一張。
操作步驟¶
- 開啟匯率表(BCURRENM),把要列印的那張匯率表單據叫出來(查詢或翻頁移動到該筆)。
- 按匯率表工具列的
列印,系統彈出「匯率表列印」條件對話框。- 此時系統會自動把目前這張單的單號同時填入起始單號與截止單號,預設即為「只印目前這一張」。
- 視需要調整列印區間:
- 只印一張 → 起訖單號維持相同(預設值)。
- 印一段連續單號 → 把起始單號改成區間起點、截止單號改成區間終點。
- 確認列印的報表為
匯率表(B060-1,A4 直印)。 - 按列印框架的執行鈕進行
預覽或列印:預覽:先在畫面上檢視排版與內容,確認無誤再送印。列印:直接輸出至印表機,或由報表引擎匯出成 PDF/其他格式。
起訖單號不可留空
本頁要求起始單號與截止單號都要有值才會產出資料(見欄位連動與附加功能)。任一端空白時,系統判定「沒有可印資料」,不會出報表。由於從匯率表帶入時兩端都已自動填好,正常情況不會遇到;只有手動清空欄位才會發生。
欄位說明¶
| 欄位 | 必填 | 說明/格式/預設 |
|---|---|---|
| 條件別(Document No) | ✔ | 列印條件種類,固定為「依單號」(PrintConditionEnum.DocumentNo),是目前唯一提供的條件。畫面上以一個已選取的 RadioButton 呈現。 |
| 起始單號 | ✔ | 列印區間起點單號,最長 20 碼。由匯率表帶入時等於目前單號。 |
| 截止單號 | ✔ | 列印區間終點單號,最長 20 碼。由匯率表帶入時等於目前單號(與起始相同=只印一張)。 |
沒有日期/類別條件
本版列印頁只提供「依單號」一種篩選條件,沒有「依日期區間」或「依匯率類別」的列印選項。若要印某段期間的匯率,請改以單號區間表達,或在匯率表逐張列印。
欄位連動與附加功能¶
這一節說明本頁背後的自動行為(皆來自實際程式碼):
- 從匯率表開啟時自動帶入起訖單號:在匯率表按
列印,母程式會建立本列印頁並把目前主檔那張單的單號同時設給起始單號與截止單號。所以你一打開對話框,預設就是「印目前這一張」,不必自己輸入。- 若匯率表上目前沒有任何一張單(尚未查到資料),則起訖單號會是空白,需自行輸入後才能印。
- 條件別固定為「依單號」:本頁的條件別預設且唯一為
DocumentNo。畫面上的 RadioButton 為已選取狀態,作用是標示「目前依單號列印」,沒有其他條件可切換。 - 送印前的資料檢核(HaveReportData):按列印時,系統會先檢查起始單號與截止單號是否都有值。
- 當你...把任一端清空後按列印 → 系統會判定「無可列印資料」而不產出報表。
- 當你...兩端都有值 → 系統放行,依下方的報表參數去抓資料出報表。
- 報表參數(GetReportParameters):本頁把起始單號、截止單號兩個值當成報表參數(
BeginningDocumentNo/EndingDocumentNo)傳給報表引擎,由報表依此區間撈取匯率表資料。 -
報表清單(GetReports):本頁固定提供一份報表——
報表編號 報表名稱 報表抬頭 尺寸 國家區域 B060-1Bcurrenm匯率表 A4 TW 報表抬頭即列印出來的標題「匯率表」。報表資料來源對應
rpt_b060_bcurrenm_report1。 -
預覽與列印:本頁實作列印框架介面(
IPrintSource/IUpdatePrint),預覽、列印、取消等動作鈕與輸出格式由共用的列印框架提供,本頁只負責提供條件與報表清單,不另寫列印邏輯。
本頁不維護資料
本頁純粹是列印條件視窗,沒有新增/修改/刪除/儲存匯率本身的功能。所有匯率的建立與修改都在匯率表完成。
常見問題¶
按了列印卻沒有出報表?
最常見原因是起始單號或截止單號為空白。本頁要求兩端都要有值才會產出資料;任一端空白時系統會判定「無可列印資料」而靜默不出報表。請確認兩個單號欄位都已填寫(從匯率表開啟時通常已自動帶入)。
報表印出來是空白的,沒有任何幣別匯率?
報表是依單號區間去撈匯率表資料。若該區間內沒有對應的匯率表單據,或該單據的明細(各幣別買/賣價)尚未輸入,報表就會空白。請回匯率表確認該單號確實存在、且明細已維護並儲存。
起訖單號預設值是哪裡來的?我沒有輸入。
從匯率表按 列印 開啟本頁時,系統會自動把匯率表目前那張單的單號同時填入起始與截止單號,所以預設就是「只印目前這一張」。若你是在匯率表沒有資料的狀態下開啟,欄位才會是空的,需自行輸入。
我想印某一段日期的匯率,找不到日期條件?
本版列印頁只提供「依單號」一種條件,沒有日期區間或匯率類別的篩選。請改用單號區間(起始~截止單號)來涵蓋你要的範圍,或在匯率表逐張列印。
相關功能¶
- 匯率表(BCURRENM,本列印頁的母表單)
- 幣別檔(各幣別主檔,匯率表的明細幣別來源)
- B.基礎資料 模組首頁
需補截圖清單
以下截圖待功能 runtime 驗收後補拍(放 docs/B-BasicData/images/):
images/bcurrenmprint-step1.png— 從匯率表工具列按「列印」開啟本對話框的入口images/bcurrenmprint-step2.png— 列印條件對話框全貌(含 Document No 條件與起訖單號,並標出已自動帶入的單號)images/bcurrenmprint-step3.png— 匯率表報表(B060-1)的預覽畫面