跳轉到

程式資訊

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

拜訪單(客戶拜訪記錄)

功能簡介

「拜訪單」用來登錄業務員每一次實際拜訪客戶的紀錄——何時去、去看誰、見了哪些受訪人員、談了什麼主旨與內容,以及交通上的里程數過路費。它是業務日常活動的原始憑證,後續可透過內建的查詢報表彙整成日報表、週報表、里程數彙總、客戶彙總,供業務主管掌握團隊的客戶接觸狀況與交通成本。

使用者主要是業務員(登錄自己的拜訪)與業務主管(透過報表檢視全員拜訪)。在銷售流程中,它屬於銷售訂單模組的前端 CRM 環節,與客戶基本資料緊密相連:輸入受訪代號即自動帶出該客戶的簡稱、類別、經銷商與負責業務員。

前置需求

  • 權限:E.銷售訂單 → 拜訪單(ProgramClass VISIT)的瀏覽/修改權限。
  • 報表的「主管」視野:權限的備註欄若含「主管」二字,查詢報表才能看到全部業務員的資料;否則系統一律只回傳「姓名=目前登入者」的拜訪紀錄(見欄位連動與附加功能)。
  • 基礎資料:下列主檔需先維護,拜訪單才能正確帶值——
資料 影響什麼
客戶基本資料 受訪代號帶出客戶簡稱/客戶名稱/客戶類別/經銷商/負責業務員
業務員(員工)主檔 業務員編號帶出姓名與所屬部門代號
部門主檔 部門代號帶出部門簡稱
客戶類別代碼(C262)、經銷商代碼(C270) 下拉選單的可選值與顯示文字

操作步驟

新增一張拜訪單

  1. 從主選單開啟 E.銷售訂單 → 拜訪單
  2. 點工具列 新增。系統會自動把公司代碼設為 1(見欄位連動與附加功能)。
  3. 填寫拜訪日期拜訪主旨
  4. 受訪代號輸入客戶代號(或用放大鏡查詢),離開欄位後系統自動帶出客戶簡稱、客戶類別、經銷商,並把該客戶的負責業務員帶進業務員編號
  5. 視需要調整業務員編號;輸入後自動帶出姓名業部門代號/部門簡稱
  6. 填寫受訪人員起始時間/截止時間里程數過路費
  7. 在下方拜訪內容附件及備註輸入詳細紀錄(皆為可換行的多行文字)。
  8. 儲存

    小技巧

    可用 Ctrl+S 快速儲存。拜訪單號為系統自動產生、不可輸入。

修改/刪除

  1. 用工具列的上一筆/下一筆或查詢功能切換到要處理的拜訪單;切換後系統會自動重新整理客戶簡稱、業務員姓名、部門簡稱等顯示文字(見欄位連動與附加功能)。
  2. 直接修改欄位後 儲存,或點 刪除 移除整張單。

查詢報表(拜訪統計)

  1. 在拜訪單畫面按工具列的延伸功能 其他功能1,開啟拜訪查詢(Visit Query)視窗。
  2. 視窗內有四個頁籤,各自有獨立的查詢條件與 查詢 按鈕:

    1. Daily Report(日報表):依拜訪日期區間+業務員編號區間列出每一筆拜訪明細。
    2. Weekly Report(週報表):把區間內的拜訪依「週」分組,並把每天的拜訪內容填進週一~週日的對應欄,彙總里程數與過路費。
    3. Mileage Summary Report(里程數彙總):依年度+業務員編號區間,把每位業務員的里程數攤平成一月~十二月十二欄並加總。
    4. Customer Summary Report(客戶彙總):依日期區間+業務員編號區間,並可加上客戶類別/經銷商篩選,列出以客戶為主軸的拜訪明細。
  3. 設定條件後按 查詢,結果顯示在格線中。

  4. 各頁籤下方有 列印 版面控制(PrintLayoutControl)可輸出報表;按 離開 關閉視窗。關閉後拜訪單主畫面會自動重新整理資料。

    報表查詢不會改資料

    查詢視窗只做查詢與列印,儲存 按鈕在此情境等同關閉視窗(不會回寫資料庫)。

欄位說明

欄位 必填 說明/格式/預設
拜訪單號 自動 系統自動產生,唯讀,不可輸入
拜訪日期 yyyy/MM/dd;空白會擋存檔
拜訪主旨 文字(上限 80 字)
受訪代號 客戶代號;空白會擋存檔。輸入後連動帶出客戶資訊
客戶簡稱 帶出 由受訪代號帶出,唯讀
業務員編號 空白會擋存檔。輸入後帶出姓名與部門
姓名 帶出 由業務員編號帶出,唯讀
業部門代號/部門簡稱 帶出 由業務員編號帶出
客戶類別 帶出/可選 下拉(代碼表 C262);輸入受訪代號時自動帶入
經銷商 帶出/可選 下拉(代碼表 C270);輸入受訪代號時自動帶入
受訪人員 多行文字(上限 999 字)
起始時間/截止時間 時間格式(HH:mm
里程數(公里) 數值,預設 0
過路費(元) 數值,預設 0(程式內部屬性名為「過路費次數」)
拜訪內容 多行文字(上限 999 字)
附件及備註 多行文字(上限 999 字)
公司代碼 自動 新增時自動設為 1;為 0 會擋存檔

查詢報表條件欄位

頁籤 條件 預設
日報表/週報表/客戶彙總 Beginning Date~Ending Date 起訖皆預設今天
日報表/週報表/里程數/客戶彙總 Beginning~Ending SalesRep Code 起=空、訖=zzzzz(涵蓋全部)
里程數彙總 Year 預設今年
客戶彙總 客戶類別/經銷商 預設空白(不篩選)

欄位連動與附加功能

這一節彙整「輸入某欄位/按某功能後系統會做什麼」,全部來自實際程式碼(VisitViewModelTwork_ord_vw_visitSource、四支報表 VM 與 VisitSave)。

主畫面的欄位連動

  • 輸入受訪代號:離開欄位後,系統用該代號去客戶主檔查資料並一次帶入多個欄位——

    1. 帶出客戶簡稱GetCustomerName)。
    2. 若查得到客戶,再帶出客戶名稱客戶類別經銷商
    3. 並把該客戶設定的負責業務員編號帶進來,連帶觸發下一條的業務員連動。

    一次輸入、整列帶齊

    只要打對受訪代號,客戶相關欄位(簡稱、類別、經銷商)與負責業務員多半會自動填好,通常不必再手動選客戶類別或經銷商。

  • 輸入業務員編號:離開欄位後,系統帶出該業務員的——

    1. 姓名GetSalesmenName)。
    2. 若查得到員工,帶出其部門代號並換算成部門簡稱
  • 新增時的預設值AfterAddNew):按 新增 後,系統把公司代碼設為 1。其餘數值欄(里程數、過路費)以 0 起始。

  • 切換筆數時重新整理顯示AfterMoverRecordRefreshDescription):每次移動到另一筆拜訪單,系統會依存檔的代號重新查出部門簡稱/客戶簡稱/業務員姓名,避免顯示舊客戶或舊業務員的名稱。

存檔檢核(VisitSave.AllowSave

儲存 時,除了共用檢核外,下列四項任一不符就會擋下並提示「請輸入…」:

  1. 受訪代號不可空白。
  2. 公司代碼不可為 0。
  3. 業務員編號不可空白。
  4. 拜訪日期不可空白。

其他功能1:拜訪查詢報表(ExtendedFunction1

工具列延伸功能 其他功能1 會開啟 Visit_q 視窗(四個報表頁籤)。視窗關閉後,主畫面會自動 Renew 重新載入目前的拜訪單。四個報表的計算邏輯如下:

  • 共同的權限過濾:四個報表查詢時都會檢查 VISIT 權限的備註——

    • 備註含「主管」→ 看得到條件內所有業務員的拜訪。
    • 否則 → 自動加上「姓名=登入者名稱」,只看自己的拜訪。
  • 日報表(Visit_dailyViewModel:以拜訪日期 between 起訖、業務員編號 between 起訖為條件,直接列出原始拜訪明細(twork_ord_vw_visit_v 檢視)。

  • 週報表(Visit_weeklyViewModel:先抓出區間內的拜訪,依年+週數分組(GetWeek,以星期日為週首)。每一週先放一列「週標題」列出該週週一~週日的日期;接著依「業務員+客戶類別」彙整,把每筆拜訪的內容(受訪代號 客戶簡稱 / 拜訪單號 / 拜訪主旨)填進對應的星期欄,並加總該組的里程數(TotalMileage)過路費(TotalFee)

  • 里程數彙總(Visit_mileageViewModel:以年度(拜訪日期前 4 碼)+業務員編號區間為條件,SQL 端依「業務員+姓名+月份」group by 把里程數加總,再於 C# 端把每個月攤平成一月~十二月十二欄,並算出全年合計(TotalMileage)

  • 客戶彙總(Visit_customerViewModel:以拜訪日期區間+業務員編號區間為條件,並可再加客戶類別經銷商兩個篩選(留空=不篩),列出以客戶為主軸的拜訪明細。

尚未提供的功能

本表單目前沒有轉傳票、沖帳、簽核/工作流程或附件上傳功能;「附件及備註」是一個純文字欄位,並非檔案夾帶。報表查詢視窗的 查詢 按鈕在母層 Visit_qViewModel 為空實作,實際查詢由各頁籤自己的 查詢 觸發。

常見問題

輸入受訪代號後,客戶簡稱/類別/經銷商沒帶出來?

這些值來自客戶基本資料。請確認該客戶代號確實存在、且資料完整。若客戶主檔查不到此代號,系統只會留下你打的代號,其餘欄位維持空白。

業務員姓名或部門簡稱是空的?

姓名由業務員編號帶出、部門簡稱再由該業務員的部門代號帶出。若員工主檔沒有這位業務員,或業務員沒設定部門,連動就帶不到值。切換到別筆再切回來會觸發重新整理(RefreshDescription)。

按儲存出現「請輸入…」存不了?

存檔會檢核四個必填項:受訪代號、公司代碼、業務員編號、拜訪日期。其中公司代碼是新增時自動帶 1 的;若你是用其他方式建立而公司代碼為 0,也會被擋。請補齊紅框欄位後再存。

報表只看得到自己的拜訪,看不到別人的?

這是權限設計。只有 VISIT 權限的備註欄含「主管」字樣時,報表才會放行查看全體業務員的資料;否則系統一律過濾成只顯示登入者本人的拜訪。請洽系統管理員調整權限備註。

里程數彙總某些月份是 0?

里程數彙總是把該年度有拜訪紀錄的月份里程加總後攤平到十二欄;沒有拜訪(或里程數為 0)的月份自然顯示 0。也請確認查詢的年度與業務員編號區間正確。

過路費欄位為什麼程式裡叫「過路費次數」?

畫面標示為「過路費(元)」,但底層 Source 屬性名是 過路費次數,兩者是同一欄。週報表彙總時這個值會加總成 Total Fee

相關功能


需補截圖清單

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

  1. visit-step1.png — 拜訪單主畫面(受訪代號/業務員連動帶值後的全貌)
  2. visit-step2.png — 新增並填妥一張拜訪單、含拜訪內容與附件及備註
  3. visit-step3.png — 拜訪查詢(Visit Query)視窗的四個報表頁籤
  4. visit-step4.png — 里程數彙總報表(一月~十二月攤平與合計)