跳轉到

程式資訊

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

出貨資料查詢

本功能尚在規劃中(未提供)

「出貨資料查詢(QRY_SAL_NOGI)」目前只存在於 VFP 舊版系統,新版 TsERP 尚未實作對應的 ViewModel/畫面,因此暫時無法在新系統操作。 本頁先依 VFP 原始程式(vfpcode/scx_nogi.prgqry_sal_nogi class)整理出規劃中的查詢條件、結果頁籤與算法,供移植與驗收參考。待新版完成後再改為正式操作手冊。

功能簡介

「出貨資料查詢」把一段期間內的出貨單與出貨退回單明細彙整成一份可多角度檢視的銷售統計報表。它從出貨主檔(TRSAMA)與明細(TRSADE)撈出交易資料,串接客戶(CUDATA)、業務員(SALESMEN)、品號(INVENT)與群組分類後,一次算出8 個彙總面向:出貨明細、產品彙總、客戶彙總、業務彙總、類別彙總、日期彙總、單號彙總、群組彙總。

適合業務/營運主管在月底或期中回答:

  1. 這段期間賣了什麼、賣給誰、誰賣的?(出貨明細)
  2. 哪些產品/客戶/業務員/客戶類別/群組賣得最好?(各彙總頁的金額排名)
  3. 每天、每張單的出貨與退貨金額分別是多少?(日期彙總、單號彙總)

退貨以負數計入

交易別碼 SB(出貨退回單)的數量與金額在計算時一律取負值,因此各彙總頁的「銷貨淨額=出貨金額+退貨金額」已是扣除退貨後的淨值。

前置需求

  • 權限:M.主管資訊 → M-050 出貨資料查詢 的瀏覽/列印權限。
  • 基礎資料:查詢結果的完整度取決於下列主檔的維護狀況——
資料 影響的結果
出貨單/出貨退回單(TRSAMA/TRSADE) 所有資料的來源;無單據則查無資料
客戶主檔(CUDATA) 客戶簡稱/客戶類別/經銷商/送貨地點/集團代號、客戶彙總、客戶最新業務員
業務員主檔(SALESMEN) 業務員姓名、業務彙總(最新/歷史業務員)
品號主檔(INVENT) 品名/單位/容量/群組代號/分類、產品彙總
群組分類(vw_grpm群組分類) 分類1~6/群組說明、群組彙總、出貨統計表的分類
樞紐分析表設定(LCL樞紐分析表,類別 H05F/H05G) 「分析」鈕可開啟的 Excel 樞紐分析範本

操作步驟

以下為 VFP 規劃流程

下列步驟描述 VFP 舊版的實際操作,新版 C# 完成前僅供參考。

  1. 從主選單開啟 主管資訊 → 出貨資料查詢
  2. 在左側條件面板輸入查詢條件(參見查詢條件欄位):客戶/品號/業務員的起訖範圍、交易日期起訖、集團代號、隸屬倉庫、稅別等。
  3. 視需要調整單據範圍與選項:
    • 勾選 出貨單出貨退回單(兩者預設都勾)決定要納入的單據型態。
    • 切換 業務別最新業務員歷史業務員,預設歷史業務員)。
    • 需要對帳發票時勾選 抓取財務單號
  4. 按條件面板的 查詢,系統撈資料並一次算出 8 個彙總頁。
  5. 點上方頁籤切換檢視面向(出貨明細/產品彙總/客戶彙總/業務彙總/類別彙總/日期彙總/單號彙總/群組彙總)。
  6. 在「出貨明細」頁可用下方的 報表選擇(客戶/產品/日期/單號/客戶品號/出貨統計表)切換明細排序與列印格式。
  7. 列印或匯出:每個頁籤下方都有列印工具列,可選 預覽列印匯出 Excel(參見列印與匯出)。

出貨資料查詢主畫面

欄位說明

查詢條件欄位

欄位 必填 說明/格式/預設
客戶代號(起~止) 客戶代號區間;預設起 ~止 zzzz(全部)
集團代號 指定集團則只查該集團(a.集團代號);空白=不限
隸屬倉庫 指定倉庫則只查該倉(a.隸屬倉庫);空白=不限
品號(起~止) 品號區間;預設起 ~止 zzzz(全部)
交易日期(起~止) 格式 yyyy/MM/dd預設起=當月 1 日、止=今天
業 務 員(起~止) 業務員編號區間;預設起 ~止 zzzz(全部)
業務別 最新業務員(取 CUDATA 現行業務)/歷史業務員(取單據當時業務),預設歷史業務員
稅別 指定稅別則只查該稅別;空白=不限
出貨單 勾選納入交易別碼 SA/SE/SF預設勾選
出貨退回單 勾選納入交易別碼 SB預設勾選
客戶彙總依集團代號 勾選後「客戶彙總」頁改以集團代號/集團簡稱彙總,預設不勾
抓取財務單號 勾選後加掛 vw_出貨單財務單號,明細多出財務單號欄,預設不勾
包含金額 「出貨明細」頁的選項;取消後單價/原幣未稅/本幣未稅一律歸 0(僅看數量)。此選項預設隱藏且不勾(金額歸 0),只有當此查詢的備註含「單價」時 Init 才會讓它顯示並預設勾選

起訖預設值來源

上述「全部」用 空 ~ zzzz 表示、交易日期預設「當月 1 日~今天」都是 VFP Init 程序設定的開窗預設,移植到新版時應比照帶入。

結果頁籤

頁籤 內容
出貨明細 逐筆明細列,可依下方 報表選擇 切換排序與列印格式(客戶別/產品別/日期別/單號別/客戶品號別/出貨統計表)。
產品彙總 依品號彙總出貨/退貨數量與金額、銷貨淨額、平均單價,並依銷貨淨額排名次。
客戶彙總 依客戶(或集團)彙總出貨/退貨數量與金額、銷貨淨額並排名次。
業務彙總 依業務員彙總出貨/退貨/銷貨淨額並排名次。
類別彙總 依客戶類別彙總金額並排名次。
日期彙總 依交易日期彙總每日出貨/退貨/銷貨淨額。
單號彙總 依出貨/退貨單號彙總金額、稅額、件數、總額,可篩選「無發票號碼」或「業務不同」。
群組彙總 依品號群組(分類)彙總數量與金額並排名次。

出貨明細主要欄位

欄位 說明/格式
客戶代號/客戶簡稱 取自 CUDATA
交易日期 出貨單交易日期
倉單號 出貨單號(依參數 3012 決定顯示倉單號或單號)
品號/品名 取自 INVENT
序號 明細列序號
交易別碼 SASESF=出貨、SB=退貨
數量 退貨(SB)顯示為負數
單價 原幣單價;取消「包含金額」時歸 0
原幣未稅/本幣未稅 取消「包含金額」時歸 0(明細列因退貨翻負,但各彙總頁的金額是以「出貨減退貨」算出來的)
原幣含稅/本幣含稅 退貨(SB)顯示為負數
幣別/匯率/稅別/稅額 取自出貨單表頭(其中原幣稅額/本幣稅額在退貨時顯示為負數)
客戶類別/業務員編號/姓名 業務員依「業務別」選最新或歷史
發票號碼/客戶品號/客戶訂單號 取自明細
集團代號/經銷商/送貨地點 取自 CUDATA
財務單號 僅在勾選「抓取財務單號」時出現
分類1/分類2/分類3 取自群組分類(vw_grpm群組分類)

欄位連動與附加功能

這一節整理「輸入某欄位/按某按鈕後系統會做什麼」,全部來自 VFP qry_sal_nogi class 的程序。

開窗時的預設帶入(Init)

當你開啟此查詢,系統會:

  1. 把客戶/品號/業務員的起訖預設為 空 ~ zzzz(代表全部)。
  2. 交易日期起訖預設為「當月 1 日~今天」LEFT(DTOC(DATE()),7)+'/01'DTOC(DATE()))。
  3. 還原你上次調整過的明細欄位寬度、順序與排序(從 TB_RDCOL 讀回個人化的格線記憶)。
  4. 只有當此查詢的備註含「單價」時,才把「出貨明細」頁的 包含金額 勾選框顯示出來並預設勾選;否則該勾選框維持隱藏、預設不勾(明細金額一律歸 0)。
  5. 若此查詢支援樞紐分析(LCL樞紐分析表 類別 H05FH05G 有設定),則啟用「出貨明細」與「單號彙總」頁的樞紐選單與分析鈕

按下「查詢」時系統會做的事

當你按 查詢,系統會:

  1. 先清空所有彙總暫存(出貨明細、產品/客戶/業務/類別/日期/單號/群組彙總)。
  2. 依條件組出 SQL:固定排除已作廢單(a.已審核<>'X'),套上客戶/品號/交易日期的 BETWEEN 區間,再依業務別決定用 c.業務員編號(最新)或 a.業務員編號(歷史)篩選業務範圍。
  3. 依集團代號、隸屬倉庫、稅別是否填寫,動態追加對應條件。
  4. 出貨單/出貨退回單 兩個勾選決定交易別碼條件(兩者皆勾=SA/SE/SF/SB;只勾出貨=SA/SE/SF;只勾退回=SB;兩者皆不勾=以上四種以外)。
  5. 撈回資料後,逐列把退貨(SB)的數量、原幣含稅、本幣含稅、原幣稅額、本幣稅額轉為負數(明細列的原幣未稅/本幣未稅不在此處翻負)、依參數 3012 決定「使用單號」顯示倉單號或單號、算出箱數(數量÷包裝量_箱)。
  6. 若取消「包含金額」,把明細的單價/原幣未稅/本幣未稅整批歸 0。
  7. 依此明細一次算出 8 個彙總頁(各彙總都以「SA/SE/SF 為出貨、SB 為退貨」分流加總,並依銷貨淨額由大到小排名次)。
  8. 把「出貨明細」頁下方的合計框填上出貨總數/出貨總額/出貨總稅額退貨總數/退貨總額/退貨總稅額

退貨並非另外一欄,而是負值併入

退貨(SB)不是獨立統計,而是把數量與金額以負值併入同一彙總。所以「銷貨淨額」已自動把退貨扣掉;若你只想看純出貨,請取消勾選「出貨退回單」重新查詢。

業務別切換(最新/歷史業務員)

當你選 最新業務員,業務員編號/姓名改抓 CUDATA 現行設定的業務員(不論單據當時是誰開的);選 歷史業務員 則沿用單據當時的業務員。這個選擇同時影響業務範圍篩選與「業務彙總」頁的歸屬。

出貨明細的「報表選擇」

在「出貨明細」頁下方有一組單選(客戶/產品/日期/單號/客戶品號/出貨統計表)。切換它時系統會立即改變明細的排序索引(客戶別/產品別/交易日期別/單號別/客戶品號別),並決定列印時套用哪張報表格式(見下)。選「出貨統計表」則改走年度月別統計(見出貨統計表)。

各彙總頁的「報表種類」排序

產品/客戶/單號/群組彙總頁上方各有「報表種類」單選,切換時即時換排序:

  • 產品彙總:名次品號客戶品號群組代號
  • 客戶彙總:名次客戶代號業務員編號
  • 單號彙總:單號運送方式
  • 群組彙總:名次群組代號

單號彙總的兩個篩選

  • 篩選無發票號碼:只列出尚未開發票(發票號碼為空)的單號。
  • 篩選業務編號不同:只列出「出單業務員 ≠ 客戶現行業務員」的單號,方便稽核業務歸屬。

列印與匯出

每個頁籤下方的列印工具列都支援 預覽列印匯出 Excel 三種輸出(Excel 透過 U_TOEXCEL 直接把目前格線資料丟到 Excel)。不同頁籤套用不同 FastReport 報表:

頁籤 / 選項 報表
出貨明細(含金額)依客戶別 SAL_DE11
出貨明細(含金額)依產品別 SAL_DE21
出貨明細(含金額)依日期別 SAL_DE31
出貨明細(含金額)依單號別 SAL_DE41
出貨明細(含金額)依客戶品號別 SAL_DE51
出貨明細(不含金額,任一排序) SALE1
產品彙總 SAL_DEPD(依群組改用 SAL_DEPE
客戶彙總 SAL_DECU(名次)/SAL_DECU1
業務彙總 SAL_DESA
類別彙總 SAL_DECS
日期彙總 SAL_DEDA
單號彙總 SAL_DENOSAL_DENP
群組彙總 SAL_DEGP
出貨統計表 SAL_出貨統計表

明細列印前的檢查

列印出貨明細時若 SAL_QRY1 沒有資料,系統會跳「無資料可列印」並中止;出貨統計表則會臨時建立年度月別統計表後再列印。

出貨統計表

在「出貨明細」頁下方報表選擇選 出貨統計表 後列印,系統會以分類3(群組分類)+品號為單位,把 12 個月的出貨金額或數量橫向攤平成一張年度統計表(只計 SA/SB),抬頭依「包含金額」與否顯示「○○年出貨金額統計表」或「○○年出貨數量統計表」。

樞紐分析(分析鈕)

「出貨明細」與「單號彙總」頁若有設定樞紐範本,畫面會出現樞紐選單分析 鈕。按 分析 時系統會把目前格線資料複製成暫存 DBF,複製對應的 Excel 樞紐範本檔,並用 Excel 自動開啟+重新整理樞紐分析。找不到範本檔時會提示「查無樞紐分析表之檔案」。

常見問題

查不到任何資料?

請確認:① 交易日期區間有涵蓋到實際出貨日(預設只查當月);② 客戶/品號/業務員區間沒有把資料排除(預設應為 空 ~ zzzz);③ 出貨單/出貨退回單至少勾一個;④ 該期間確有未作廢(已審核<>'X')的出貨單。

金額欄全部是 0,只有數量有值?

這是因為「出貨明細」頁的 包含金額 沒有勾選——未勾時系統會刻意把單價、原幣未稅、本幣未稅歸 0,只看數量。此勾選框只有在查詢備註含「單價」時才會顯示並預設勾選,否則它預設隱藏、不勾(金額即為 0)。若有顯示,勾回「包含金額」重新查即可看到金額。

退貨怎麼是負數?銷貨淨額對不上出貨金額?

退貨單(交易別碼 SB)的數量與金額一律以負值併入統計,而「銷貨淨額=出貨金額+退貨金額」已扣掉退貨。若只想看純出貨,請取消勾選「出貨退回單」後重查。詳見欄位連動與附加功能

業務彙總的業績歸到不對的業務員?

取決於左側 業務別 的選擇:歷史業務員 依單據當時的業務員歸屬、最新業務員 依客戶現行業務員歸屬(預設為歷史)。

為什麼新版系統裡找不到這個功能?

此功能(QRY_SAL_NOGI)目前只在 VFP 舊版提供,新版 TsERP 尚未實作對應畫面。本頁先記錄規劃中的條件與算法,待移植完成後會更新為正式操作說明。

相關功能


需補截圖清單

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

  1. qry_sal_nogi-step1.png — 主畫面(左側條件面板 + 8 個彙總頁籤全貌)
  2. qry_sal_nogi-step2.png — 出貨明細頁(含下方「報表選擇」單選與合計框)
  3. qry_sal_nogi-step3.png — 任一彙總頁(建議以「產品彙總」或「客戶彙總」名次排序為主畫面)