跳轉到

程式資訊

  • 程式 IDCU_QRY1
  • 所屬子系統:M.主管資訊
  • 狀態:stable

客戶資料查詢

功能簡介

「客戶資料查詢」針對單一客戶(或不指定客戶查全部),把該客戶在指定受訂日期區間內的銷售情形拆成三個面向呈現,並各自算出一個本幣總金額

  1. 訂單資料:客戶下了哪些單、金額多少。
  2. 出貨資料:這些訂單實際出了哪些貨。
  3. 未出貨資料:訂單還有多少沒交(未交數量=訂單數量-已交數量,只列大於 0 的)。

適合業務、業務主管或客服在回覆客戶交期、追欠交、對帳時,一次掌握「下單→出貨→欠交」的全貌。三個面向放在同一畫面的三個頁籤,條件改一次、三頁一起重查。

與生產計劃查詢的差異

本頁的「未交數量=訂單數量-已交數量」是扣量概念(看實際還欠多少)。生產計劃查詢的預估則是「日期接力」、不做數量互抵,兩者用途不同不要混淆。

前置需求

  • 權限:M.主管資訊 → M-010 客戶資料查詢 的瀏覽權限。
  • 基礎資料:查詢結果直接取自下列單據與主檔,沒有資料就查不到——
資料 影響的結果
銷售訂單主檔/明細(ormast / ordetl) 訂單資料頁、未出貨資料頁的全部內容;出貨頁的訂單回填欄位
出貨單(trsama / trsade,明細需有「訂單pkid」對應) 出貨資料頁;出貨明細沒掛到訂單來源就不會出現
品號主檔(invent) 出貨資料頁的品名
訂單上的幣別與匯率 各頁的幣別/匯率,以及金額換算成本幣
客戶主檔 條件面板的客戶搜尋與簡稱顯示、各頁的客戶簡稱

操作步驟

本表單是純查詢報表,沒有新增/修改/刪除,操作集中在「設條件 → 查詢 → 看三頁 → 匯出」。

  1. 從主選單開啟 M.主管資訊 → 客戶資料查詢
  2. 在左側條件面板輸入查詢條件(詳見欄位說明):
    • 客戶資料:輸入或搜尋客戶代號,右側欄位會自動帶出客戶簡稱。留空表示查全部客戶。
    • 訂單編號起訖、受訂日期起訖、品號起訖。受訂日期預設帶「今天往前 15 天 ~ 今天」。
  3. 按工具列的 查詢,系統一次取回三組資料填到三個頁籤,並更新訂單/出貨/未出貨三個總金額。
  4. 切換上方頁籤檢視結果:

    1. 訂單資料:區間內的訂單明細,底部同時顯示三個本幣總金額。
    2. 出貨資料:這些訂單對應的出貨明細,並回填來源訂單資訊。
    3. 未出貨資料:尚有欠交(未交數量 > 0)的訂單明細。
  5. 需要轉成 Excel 時,在任一格線上按右鍵選擇匯出(三個頁籤各自可匯出)。

小技巧

改了任何條件後再按一次 查詢 即可重算三頁,不必逐頁操作。三個總金額固定顯示在「訂單資料」頁底部,切到其他頁籤也是同一組數字。

欄位說明

查詢條件(左側面板)

欄位 必填 說明/格式/預設
客戶資料(客戶代號) 搜尋型欄位,可帶出客戶簡稱;預設空字串=查全部客戶(VFP 原版必選單一客戶,新版放寬)
訂單編號(起) 預設空字串
訂單編號(訖) 預設 zzzz(涵蓋到最大值)
受訂日期(起) 格式 yyyy/MM/dd;預設今天往前 15 天
受訂日期(訖) 格式 yyyy/MM/dd;預設今天
品號(起) 搜尋型欄位;預設空字串
品號(訖) 搜尋型欄位;預設 zzzz

起訖採字串比較

訂單編號與品號的起訖是用字串 BETWEEN 比對,所以訖值預設給 zzzz 代表「一路含到最大」;留意若把訖值清空,等於只查空字串,會查不到資料。

訂單資料頁

欄位 說明
受訂日期 訂單主檔受訂日期
客戶訂單號 客戶自己的訂單編號
訂單編號 系統訂單編號
序號 訂單明細序號
品號/品名 訂單明細品項
訂單數量 訂單明細數量(依銷售數量格式顯示)
訂單金額 取訂單明細本幣未稅(本幣顯示)
預訂交期 訂單明細預訂交期
客戶代號/客戶簡稱 訂單客戶
匯率/幣別 訂單幣別與匯率

出貨資料頁

欄位 說明
出貨日期 出貨單交易日期
出貨單號 出貨單倉單號
品號/品名 出貨品項(品名取自品號主檔 invent)
出貨數量 出貨明細數量
出貨金額 出貨明細本幣未稅(本幣顯示)
受訂日期/訂單編號/客戶訂單號/預訂交期/訂單數量/訂單金額 由出貨明細的「訂單pkid」JOIN 回來源訂單帶出(出貨明細必須掛在訂單上才會列出,詳見下方說明)
客戶代號/客戶簡稱 出貨單客戶
匯率/幣別 出貨單幣別與匯率

未出貨資料頁

欄位 說明
受訂日期/訂單編號/序號/品號/品名 同訂單明細
未交數量 訂單數量 − 已交數量(只列大於 0 的明細)
未交金額 未交數量 × 單價 × 匯率(照 VFP 原樣,不做四捨五入)
預訂交期 訂單明細預訂交期
客戶代號/客戶簡稱 訂單客戶
匯率/幣別 訂單幣別與匯率

底部總金額(顯示在訂單資料頁)

欄位 說明
訂單總金額 訂單資料頁所有列的訂單金額加總(本幣,唯讀)
出貨總金額 出貨資料頁所有列的出貨金額加總(本幣,唯讀)
未出貨總金額 未出貨資料頁所有列的未交金額加總(本幣,唯讀)

欄位連動與附加功能

這支查詢的連動集中在「條件輸入後帶值」「按查詢後三頁與三合計怎麼填」兩件事,邏輯來源是條件面板、ViewModel 的 Query()、BLL 與後端 SP。

條件面板的輸入連動

  • 輸入客戶代號 → 自動帶出客戶簡稱:客戶欄是搜尋型欄位(CustomerSearch 樣式),旁邊的描述欄綁定它的 Description,輸入或選取客戶代號後會即時顯示客戶簡稱,不需另外查。
  • 品號起訖為搜尋型欄位:起訖品號可直接點選搜尋(SKUSearch 樣式)帶入品號,不必手打。
  • 受訂日期預設區間:開窗時系統把受訂日期帶成「今天往前 15 天 ~ 今天」,方便先看近期;要查更早的單請自行往前調起日。
  • 客戶留空=查全部:新版把客戶代號放寬成可空字串,空字串時 SP 不限定客戶、回所有符合日期/編號/品號條件的資料(VFP 原版必選單一客戶)。

按「查詢」後系統做的事

當你按 查詢,系統呼叫後端預存程序 TWORK_QRY_CU_QRY1,一次回三組資料對應三個頁籤:

  1. 產生訂單資料:以 vw_ormastvw_ordetl(訂單主檔+明細)依「客戶=指定客戶(或全部)、品號在起訖內、訂單編號在起訖內、受訂日期在起訖內」過濾。訂單金額取明細的本幣未稅
  2. 產生出貨資料:以出貨單(vw_trsamatrsade)為主,透過明細的「訂單pkid」INNER JOIN 回原訂單ordetlormast),把受訂日期、訂單編號、客戶訂單號、預訂交期、訂單數量、訂單金額一併帶出;品名再 JOIN 品號主檔 invent 取得。出貨金額取出貨明細的本幣未稅

    出貨頁的篩選邏輯

    出貨資料同樣套用「客戶/品號/訂單編號/受訂日期」這四個條件,但比對的是來源訂單的這些欄位(不是出貨單本身的日期),語意等同 VFP 原版「出貨必須對應到符合條件的訂單」。由於是 INNER JOIN 訂單,沒有掛到訂單來源(訂單pkid 對不到訂單)的出貨明細不會列出——這點與 VFP 原版用 SEEK 找不到時仍列出、僅訂單欄位留空的行為不同,新版直接不顯示無來源的出貨列。

  3. 產生未出貨資料:同樣以訂單主檔+明細為來源,只保留「訂單數量 − 已交數量 > 0」的明細列;未交金額=未交數量 × 單價 × 匯率。

  4. 計算三個合計:取回資料後,ViewModel 在 C# 端分別加總三頁金額——訂單總金額=Σ訂單金額、出貨總金額=Σ出貨金額、未出貨總金額=Σ未交金額,全部以本幣顯示在訂單資料頁底部。

匯出與其他工具列功能

  • 匯出 Excel:三個頁籤的格線都支援右鍵匯出(VFP 原版三頁各有獨立的 Excel 鈕,新版改由格線右鍵)。
  • 本表單沒有列印報表、沖帳、轉傳票、簽核或附件等動作;它是唯讀的查詢報表,工具列上與資料異動有關的按鈕不適用。

常見問題

某些出貨沒有出現在「出貨資料」頁?

出貨頁是把出貨明細用「訂單pkid」INNER JOIN 回訂單才列出,因此只有「由訂單轉出、且該訂單符合查詢條件」的出貨才會出現。非由訂單轉出(沒有訂單來源)的出貨明細,或對應訂單不在客戶/品號/訂單編號/受訂日期條件內者,都不會列在此頁。

未出貨資料頁一筆都沒有?

未出貨頁只列「訂單數量 − 已交數量 > 0」的明細。如果這個客戶在區間內的訂單都已全數交貨(已交數量已達訂單數量),就不會有任何未出貨列,屬正常。

查不到任何資料?

依序檢查:① 受訂日期區間是否涵蓋到該訂單(預設只查近 15 天,較舊的單要把起日往前拉);② 訂單編號/品號的訖值是否被清空(清空等於只查空字串,請保留預設 zzzz);③ 指定的客戶代號是否正確(留空可改查全部客戶確認)。

金額看起來不是訂單上的原幣金額?

三頁的金額(訂單金額/出貨金額/未交金額)都是本幣:訂單金額與出貨金額取單據的本幣未稅,未交金額=未交數量 × 單價 × 匯率。原幣資訊可參考各頁的幣別與匯率欄位自行換算。

改了條件,底部三個總金額沒變?

總金額是在每次按 查詢 取回資料後才重算的。改完條件要再按一次 查詢 才會更新三頁與三個合計。

相關功能


需補截圖清單

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

  1. cu_qry1-step1.png — 左側條件面板(客戶、訂單編號、受訂日期、品號起訖)
  2. cu_qry1-step2.png — 訂單資料頁(含底部訂單/出貨/未出貨三個總金額)
  3. cu_qry1-step3.png — 出貨資料頁(含 JOIN 帶出的訂單欄位)
  4. cu_qry1-step4.png — 未出貨資料頁(未交數量/未交金額)