跳轉到

程式資訊

  • 程式 IDSPPDTPRINT
  • 所屬子系統:G.採購付款
  • 狀態:stable

廠商報價單列印

功能簡介

「廠商報價單列印」是廠商報價單SPPDT)的列印伴隨頁,用來把已建立的廠商報價資料輸出成報表預覽/列印。它本身不維護資料,只負責挑選列印區間、套用報表格式、預覽與輸出。採購人員在報價單維護完成後,從母表單按列印即可開啟本頁,列出指定的報價單或指定廠商在某段報價日期內的所有報價明細。

與廠商報價單的關係

本頁雖然有自己的程式代號 SPPDTPRINT,但報表清單與母程式 SPPDT 共用——也就是說,這裡列出的報表就是廠商報價單可用的報表。一般情況下你會從廠商報價單畫面直接呼叫列印(系統會自動把目前這張報價單的條件帶進來),而不會單獨開啟本頁。

前置需求

  • 權限:G.採購 → 廠商報價單(SPPDT)的瀏覽/列印權限。本頁的報表權限掛在母程式 SPPDT 之下。
  • 基礎資料:列印的內容完全來自已維護的報價資料,請先確認下列項目已建立——
資料 影響的結果
廠商報價單(SPPDT 報表的主要內容;沒有報價資料就印不出明細
廠商基本資料 以「廠商代號」條件篩選時的查詢依據與報表上的廠商資訊
品號基本資料 以「SKU」條件篩選時的查詢依據
報表格式(.frx) 預覽/列印所套用的版面;母程式 SPPDT 須已掛載對應報表

操作步驟

  1. 廠商報價單畫面停在要列印的那張報價單,按工具列的列印鈕開啟本頁。系統會自動帶入目前報價單的條件(詳見欄位連動與附加功能)。
  2. 在左側條件面板選擇查詢方式(兩者擇一,以最上方的圓鈕為準):
    1. Quotation No(報價單號):依報價單號起訖區間列印。這是預設方式。
    2. Vendor Code(廠商代號):依廠商代號SKU報價日期三組起訖區間列印。
  3. 依所選方式填寫對應的起訖欄位(見欄位說明)。
  4. 從報表清單挑選要輸出的報表格式。
  5. 按預覽/列印,系統會帶著你設定的條件產生報表並顯示預覽,確認後即可送印或匯出。

條件面板文字仍為英文

目前條件面板的標籤(Quotation NoVendor CodeQuotationNoVendorCodeSKUQuotationDate)尚未中文化,但欄位用途與本頁說明一致。

欄位說明

欄位 必填 說明/格式/預設
查詢方式(Condition) Quotation NoVendor Code,以圓鈕擇一;預設 Quotation No(報價單號)
報價單號起(BeginningQuotationNo) 起始報價單號;由母表單帶入目前報價單號
報價單號迄(EndingQuotationNo) 結束報價單號;由母表單帶入目前報價單號
廠商代號起(BeginningVendorCode) 起始廠商代號,附廠商查詢;母表單帶入目前廠商
廠商代號迄(EndingVendorCode) 結束廠商代號,附廠商查詢;母表單帶入目前廠商
SKU 起(BeginningSKU) 起始品號,附品號查詢;預設空白
SKU 迄(EndingSKU) 結束品號,附品號查詢;母表單帶入 zzzz(代表到最大值、含全部品號)
報價日期起(BeginningQuotationDate) 起始報價日期,短日期格式;預設空白
報價日期迄(EndingQuotationDate) 結束報價日期,短日期格式;母表單帶入目前報價單的報價日期

△ 標記說明

報價單號起迄為列印的最低必要條件(見欄位連動與附加功能的「列印前檢核」)。廠商代號、SKU、報價日期屬於 Vendor Code 方式下的篩選條件,是否要求填寫視所選報表格式而定。

欄位連動與附加功能

這一節說明「從母表單開啟本頁」與「按下各欄位/按鈕」時系統實際做的事,皆來自程式碼。

從廠商報價單開啟時自動帶入的條件

當你在廠商報價單按列印開啟本頁,系統(GetPrintViewModel)會把目前停留的那張報價單條件預先填好:

  1. 報價單號起、迄都帶入目前報價單的報價單號(等於只印目前這一張)。
  2. 廠商代號起、迄都帶入目前報價單的廠商代號
  3. 報價日期迄帶入目前報價單的報價日期
  4. SKU 迄固定帶入 zzzz(字母最大值,代表「到最後一個品號」、不限上界)。
  5. 上述帶入只在母表單目前確實停留在一張報價單(有主檔資料)時才會發生;母表單沒有任何報價單時,本頁各條件維持空白。

也就是說,預設情況下你打開本頁就是「列印目前這張報價單」,不必再手動輸入任何條件即可預覽列印。若要改印一段區間或某廠商全部報價,再自行調整上述欄位即可。

查詢方式切換(Condition 圓鈕)

  1. Quotation No 時,系統以報價單號起迄為主要篩選條件。
  2. Vendor Code 時,系統改以廠商代號 + SKU + 報價日期三組起迄為篩選條件。
  3. 兩顆圓鈕同屬一組(GroupName="Condition"),永遠只有一個生效;切換時會即時更新傳給報表的 Condition 參數。

廠商代號/SKU 查詢輔助

  1. 廠商代號欄位掛有廠商查詢(VendorSearch),可直接輸入或叫出查詢視窗挑選廠商;此處設定為不強制檢核存在(CheckDataExist="False"),方便輸入區間端點。
  2. SKU 欄位掛有品號查詢(SKUSearch),用法相同,同樣不強制檢核存在。
  3. 報價日期起迄使用短日期遮罩(ShortDate)輸入。

報表參數傳遞(GetReportParameters)

按預覽/列印時,本頁會把下列條件打包成報表參數送給報表引擎:

  1. Condition:目前選的查詢方式(DocumentNo / VendorCode)。
  2. 報價單號起、迄 → BeginningDocumentNo / EndingDocumentNo
  3. 廠商代號起、迄 → BeginningVendorCode / EndingVendorCode
  4. SKU 起、迄 → BeginningSKU / EndingSKU
  5. 報價日期起、迄 → BeginningDate / EndingDate

報表格式(.frx)即依這些參數過濾資料、產生內容。

列印前檢核(HaveReportData)

  1. 按列印時,系統會先檢查報價單號起、迄是否皆已填寫
  2. 只要其中一個為空白,系統判定沒有可列印的資料而不繼續產表。
  3. 因此即使你改用 Vendor Code 方式,報價單號起迄仍建議保留母表單帶入的值,以通過此檢核。

目前的檢核限制

本頁的列印前檢核只驗證「報價單號起迄不可空白」,尚未在按列印當下實際查資料庫確認該區間有無資料(程式中對應的資料查詢邏輯目前保留未啟用)。因此若報價單號填了但區間內實際沒有資料,可能要在預覽畫面才看得出來。

常見問題

按了列印卻沒有反應/印不出來?

本頁要求報價單號起、迄都要有值才會繼續產表(見列印前檢核)。從母表單開啟時這兩格會自動帶入目前報價單號;若是手動清空了,請補回報價單號再試。

我想印某個廠商的全部報價,要怎麼設定?

把查詢方式切到 Vendor Code,在廠商代號起迄填入同一廠商(或一段廠商區間),並視需要設定 SKU報價日期區間。提醒:報價單號起迄仍須保留有值以通過列印前檢核。

報表內容是空的,或少了某些報價?

列印內容完全來自廠商報價單已建立的資料。請確認:該報價單/廠商確實存在報價明細,且你設定的報價單號、廠商、SKU、報價日期區間有涵蓋到目標資料。SKU 上界預設帶 zzzz 代表不限,不要誤改成較小的值而把資料濾掉。

找不到「廠商報價單列印」這個獨立選單?

一般不需要單獨開啟本頁。它是廠商報價單的列印伴隨頁,從報價單維護畫面按列印即會帶著目前條件開啟;報表權限與清單也掛在母程式 SPPDT 之下。

相關功能


需補截圖清單

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

  1. sppdtprint-step1.png — 從廠商報價單開啟列印頁、條件已自動帶入的全貌
  2. sppdtprint-step2.png — 條件面板(Quotation NoVendor Code 兩種方式)
  3. sppdtprint-step3.png — 報表預覽畫面