跳轉到

程式資訊

  • 程式 IDCUPDMA
  • 所屬子系統:E.營業收款
  • 狀態:stable

客戶報價單

功能簡介

「客戶報價單」用來為特定客戶建立並維護產品報價,是報價/接單流程的源頭單據:業務人員在這裡輸入客戶、品號、數量與單價,存檔後即成為客戶與品號的有效報價。後續建立銷售訂單、或在生產計劃查詢等功能計算金額時,都會回頭抓這張報價單的單價。

單據分主檔(報價單號、客戶、幣別、有效期間等)與明細(逐項品號的數量、單價、各類費用)兩層。報價別分為「正式」與「其他」兩種:正式報價必須指定客戶、單號以 QT 開頭;其他(暫存/詢價型)報價則以 QN 開頭,不強制填客戶。

前置需求

  • 權限:E.銷售訂單 → E-050 客戶報價單 的瀏覽/修改權限。
  • 基礎資料:下列主檔影響欄位自動帶值與報價計算的完整度——
資料 影響什麼
客戶資料 輸入客戶代號後自動帶出簡稱、業務員、收付條件、聯絡人、電話、幣別
品號主檔(SKU) 輸入品號後自動帶出品名、規格、中文描述
幣別與匯率資料 報價日期當天的買入匯率,用來把外幣單價換算成本幣金額
收付條件主檔 收付條件號 的搜尋與說明
業務員主檔 業務員編號 的搜尋與報價人員
頁首備註設定(類別 M207 新增 時自動帶入的頁首備註內容(見欄位連動與附加功能

操作步驟

新增一張報價單

  1. 從主選單開啟 E.銷售訂單 → 客戶報價單
  2. 點工具列 新增。系統自動帶入預設值(報價日期=今天、幣別=本位幣、匯率=1、報價別=正式、製表人員/報價人員=登入者、有效天數=30、生效日期=報價日期),並自動切到右側「頁首備註」面板帶入預設備註。
  3. Customer Code(客戶代號) 欄輸入或搜尋客戶。系統會自動帶出客戶名稱、業務員、收付條件、聯絡人、電話與幣別(詳見欄位連動與附加功能)。

    報價別=其他時可不填客戶

    只有「正式」報價在存檔時強制要求客戶代號;「其他」報價別可空白。

  4. 確認 Quotation Date(報價日期)Effective Date(生效日期)Currency(幣別)/FX Rate(匯率) 無誤。

  5. 在下方明細格線逐列輸入:
    1. SKU(品號):輸入或搜尋品號,系統自動帶出品名、規格、中文描述。
    2. Quantity(數量)Unit Price(單價):兩者任一變動都會即時重算該列 Amount(金額)
    3. 視需要填入材料費、加工費、模具費等成本欄位。
  6. 點工具列 儲存。系統會做存檔前檢核(見常見問題)。

用「Find Price」帶入歷史單價

  1. 在某一明細列先輸入 SKU 與該張單的 客戶報價日期
  2. 點該列的 Find Price 按鈕。
  3. 系統在右側「Customer Quotation Query」面板列出該客戶+該品號的歷史報價與最近一筆訂單單價
  4. 在清單中選一筆按 取得,該單價會回填到目前這一列的 Unit Price,並即時重算金額。

修改 / 刪除

  1. 查詢 或前後筆切換(第一筆上一筆下一筆最後一筆)找到要修改的報價單。
  2. 切到編輯狀態後修改主檔或明細欄位,再 儲存
  3. 要刪除整列明細,於該列切換刪除狀態;品號與品名皆空白的列會被視為無效列自動清除。

列印報價單

  1. 點工具列 列印
  2. 在列印條件頁選擇查詢方式:
    • Quotation No:依報價單號起訖列印(從目前單據開啟時,起訖會預設為目前單號)。
    • Customer:依客戶代號+報價日期起訖列印。
  3. 執行列印。

頁首備註面板

右側支援面板含「頁首備註」分頁,可在此挑選/組合報價單抬頭下方要印出的條款文字,按 返回 寫回 Page Header Notes 欄位。

欄位說明

主檔欄位

欄位 必填 說明/格式/預設
Quotation No(報價單號) 自動 存檔時依報價別產生:正式=QT 開頭、其他=QN 開頭
Type(報價別) 正式其他;預設正式。正式須填客戶
Quotation Date(報價日期) yyyy/MM/dd,預設今天;存檔必填
Effective Date(生效日期) 預設=報價日期;存檔必填
Customer Code(客戶代號) 正式必填 搜尋客戶;觸發一連串自動帶值
Customer Name(客戶名稱) 由客戶代號帶出,可手改
Sales Rep Code(業務員編號) 存檔必填;由客戶帶出,可改
Contact / Telephone / Fax(聯絡人/電話/傳真) 聯絡人、電話由客戶帶出
Currency(幣別)/FX Rate(匯率) 預設本位幣、匯率 1;輸入客戶或選幣別時依報價日期帶入買入匯率
Activity Start / End Date(活動起訖日) 報價活動有效區間
Estimated / Actual Closed Date(預計/實際結案日) 報價案結案追蹤
Payment Term(收付條件號) 由客戶帶出,可改
ProjectCode(專案代號) 搜尋專案,帶出專案名稱
Page Header Notes(頁首備註) 新增時由 M207 設定自動帶入,可由頁首備註面板重組
Notes(報價備註) 自由輸入
製表人員 自動 預設登入者;存檔時若空白補登入者
報價人員 自動 預設登入者;存檔時若空白補登入者
最低毛利率 / 有效天數 自動 新增預設 1 / 30

明細欄位

欄位 必填 說明/格式/預設
Line No(序號) 自動 明細列序號
SKU(品號) 輸入後自動帶出品名、規格、中文描述
SKUDescription(品名) 由品號帶出,可改
Chinese Description(中文描述) 唯讀,由品號帶出
Spec(規格) 由品號帶出
Quantity(數量) 變動即時重算金額
UOM(單位) 下拉選單
Unit Price(單價) 變動即時重算金額;可用 Find Price 帶入
Customer Price(客戶價) 客戶端參考價
Standard Unit Price(標準單價) 標準單價
Amount(金額) 自動 唯讀=數量 × 單價 × 匯率(依幣別小數位四捨五入)
Material / Processing / Mold Fee(材料費/加工費/模具費) 成本明細,本幣金額
Allocation Amount / Quantity(分攤金額/數量) 分攤資訊
Suggested Price(建議售價) 建議售價
Mold No(模具編號) 對應模具
Minimum Order Quantity / Package(最低訂單量/最低包裝數) 訂購限制
Lead Time(前置天數) 交期參考
Quotation Cost(報價成本) 該列報價成本
Modified Date / Reason(異動日期/異動原因) 單價異動追蹤
Customer SKU(客戶品號) 客戶端料號
Notes(備註) 逐列備註

欄位連動與附加功能

這一節整理「輸入某欄位/按某按鈕後系統會做什麼」,全部來自實際程式碼。

新增時的預設值(AfterAddNew

當你按 新增,系統會:

  1. 自動切到右側支援面板的「頁首備註」分頁。
  2. 帶入下列預設:報價日期=今天匯率=1幣別=本位幣Context.Env.LocalCurrency)、公司代碼=1、報價別=正式製表人員/報價人員=登入帳號最低毛利率=1有效天數=30生效日期=報價日期
  3. M207 頁首備註設定組出預設的 Page Header Notes 填入頁首備註欄。

輸入客戶代號(CustomerCodeBinding

當你在 Customer Code 輸入並離開欄位,系統用該客戶去查最近一筆銷售訂單資料:

  • 查到:自動帶入 客戶簡稱業務員編號收付條件號、收付條件說明、幣別聯絡人電話;並依該幣別+報價日期取買入匯率填入匯率欄。
  • 查不到:上述欄位清空,幣別退回本位幣
  • 任何情況下若幣別最後仍為空,一律補成本位幣。

小技巧

若帶出的幣別不是你要的,可直接改 Currency;匯率會依新幣別與報價日期重新取得,明細金額隨之重算。

輸入品號(明細 品號Binding

當你在明細 SKU 欄輸入品號並離開欄位,系統會自動帶出該品號的品名、規格、中文描述等資料(透過品號描述服務)。

金額即時重算(SetPrice

明細 Amount 是唯讀,由系統算:

金額 = 單價 × 數量 × 主檔匯率,再依幣別小數位數四捨五入。

下列任一動作都會觸發重算:

  1. 修改明細 QuantityUnit Price
  2. 新增明細列(建立時即綁定主檔並算一次)。
  3. 修改主檔的幣別或匯率 —— 系統會把所有明細列重新計算一次(透過弱事件監聽 幣別匯率)。
  4. 前後筆切換載入舊單時,系統會重設幣別小數位並逐列重算金額。

Find Price(明細列「尋價」按鈕)

按某一列的 Find Price

  1. 系統先檢查主檔報價日期是否已填,未填會提示輸入。
  2. 主檔客戶 + 該列品號 + 報價日期 查詢:該品號最近一筆訂單單價 + 所有歷史報價單價
  3. 結果顯示在右側「Customer Quotation Query」面板。
  4. 在面板選一筆按 取得,把該筆單價回填到目前這列的 Unit Price(並重算金額)。

頁首備註面板(PageHeaderSpecialQueryViewModel

右側「頁首備註」分頁從類別 M207 的設定明細組出抬頭條款文字:

  • 每條設定可帶巨集 DATE()+n,系統會展開成今天加 n 天的日期(格式 yyyy/MM/dd)。
  • 返回 會把目前組好的條款依序編號(1. 2. 3. …)寫回主檔 Page Header Notes

列印(CupdmaPrintViewModel → CUPDMAPRINT)

列印 開啟列印條件頁,可依報價單號起訖客戶+報價日期起訖列印。從已開啟的單據按列印時,單號起訖會預設成目前這張單號。

尚未提供的進階功能

本表單目前未提供轉傳票、附件管理、Excel 匯入等功能;新版亦未包含獨立的簽核流程畫面(主檔雖有審核相關欄位,但無對應操作介面)。

常見問題

存檔時擋下來,說「報價日期/生效日期」必填?

這兩個欄位是存檔硬性條件。報價日期生效日期都不可空白,新增時系統會幫你預設為今天,若被清空請補回。

報價別選「正式」卻存不了?

正式報價(單號 QT 開頭)存檔時強制要求客戶代號。若是詢價或暫存型報價,可改選「其他」(單號 QN 開頭),就不需要填客戶。另外業務員編號在任何報價別都必填。

存檔時出現「資料重複」?

系統不允許同一張報價單裡出現品號+數量完全相同的兩列明細。請檢查是否重複輸入了相同品號又相同數量的列,刪掉多餘的一列即可。

明細金額(Amount)一直是 0?

金額=單價 × 數量 × 匯率。請確認該列數量單價都已輸入、且主檔匯率不為 0。若改了主檔幣別/匯率,明細會自動重算;改了單列數量或單價也會即時重算。

輸入客戶後沒有自動帶出幣別、業務員等資料?

自動帶值是用該客戶最近一筆銷售訂單回填的。若這個客戶在系統中沒有任何訂單,就帶不出資料,幣別會退回本位幣,其餘欄位需手動輸入。

Find Price 按了沒有反應或提示要輸入日期?

Find Price 需要主檔報價日期已填才會查價;也要先在該列輸入品號、且主檔有客戶。三者齊全才能查到歷史報價與訂單單價。

相關功能


需補截圖清單

以下截圖待 runtime 驗收後補拍(放 docs/E-SalesOrder/images/):

  1. cupdma-step1.png — 新增報價單主畫面(主檔+明細格線)
  2. cupdma-step2.png — 輸入客戶後自動帶值的結果
  3. cupdma-step3.png — Find Price 開啟右側「Customer Quotation Query」面板
  4. cupdma-step4.png — 頁首備註面板
  5. cupdma-step5.png — 列印條件頁(報價單號/客戶兩種模式)