跳轉到

程式資訊

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

抱怨單

功能簡介

「抱怨單」(CMPLAIN,選單代碼 E-210)用來登記客戶提出的抱怨/客訴事件,以「年度月份」為單位彙整同一個月內的多筆抱怨明細,並逐筆記錄客戶、聯絡人、抱怨事項、責任單位與處理情形,最後以完成與否追蹤每件客訴是否已結案。

此單據通常由業務、客服或品保人員維護:每個月為一張單,月內的每一件客訴登一列明細。它是一份純記錄性質的主明細單據(一張主檔對多筆明細),不涉及金額、稅額或庫存異動,也沒有審核流程;在售後服務流程中與索賠單(CLAIM)互補——索賠單管的是保固卡的金額索賠,抱怨單管的是客訴事件本身的記錄與追蹤。

前置需求

  • 權限:E.銷售訂單 → E-210 抱怨單 的瀏覽/修改權限。
  • 基礎資料:明細的客戶相關欄位靠下列主檔自動帶入,請先維護妥當——
資料 影響的結果
客戶基本資料(cudata) 明細輸入客戶代號對照碼後自動帶出客戶簡稱/聯絡人1/聯絡1電話;查無資料會擋住帶值
公司代碼(C101 公司別代碼) 主檔公司代碼下拉的清單來源,也是單號前置碼的第 1 碼

不需要審核

抱怨單沒有「已審核/審核人員/審核日期」欄位,存檔後即生效,沒有送審或核准的步驟

操作步驟

新增一張抱怨單

  1. 從主選單開啟 E.銷售訂單 → 抱怨單
  2. 點選工具列 新增
  3. 選擇主檔的公司代碼(下拉清單,必填)。
  4. 輸入年度月份,格式 yyyy/MM(例 2026/06)。這一欄決定整張單的歸屬月份,存檔時系統會用它與公司代碼組出單號
  5. 在下方明細格線逐列登記每一件抱怨:

    1. 日期輸入該件抱怨的發生日期,格式 yyyy/MM/dd(例 2026/06/13)。
    2. 客戶代號輸入客戶代號或對照碼,離開欄位後系統自動帶出客戶簡稱與聯絡資訊(見欄位連動與附加功能)。
    3. 填寫單號資料(相關單據號)、抱怨事項責任單位處理情形
    4. 客訴已處理完成時勾選完成與否
  6. 點選 儲存。系統會做存檔前檢核(公司代碼、年度月份、明細日期),通過後寫入並產生單號。

明細日期要跟著年度月份

每一列明細的日期前 7 碼(yyyy/MM)必須等於主檔的年度月份,否則存檔會被擋下。換句話說,一張單只放同一個月的抱怨。

修改既有抱怨單

  1. 用工具列的查詢/瀏覽功能找到要修改的單。
  2. 點選 修改
  3. 調整明細內容或新增/刪除明細列。單號備註為唯讀,不能直接改。
  4. 點選 儲存

刪除明細

  • 在明細列把日期抱怨事項同時清空,存檔時該列會被自動標記刪除(見欄位連動與附加功能),等同於移除這筆客訴記錄。

列印尚未提供

VFP 舊版的抱怨單報表(CMPLAIN_P)在新版尚未移植,目前無法列印。資料可改以格線右鍵匯出 Excel 的方式輸出。

欄位說明

主檔

欄位 必填 說明/格式/預設
單號 系統產生 唯讀。存檔時由「公司代碼第 1 碼+年度月份」組成前置碼,server 端再補流水號(編碼方式 4)。新增時為空白
公司代碼 公司別下拉(C101),未選會擋存
年度月份 格式 yyyy/MM,須為合法年月,否則擋存
Key ID(pkid) 系統產生 唯讀,資料列內部主鍵
備註 唯讀欄位,不可在本表單直接編輯

明細

欄位 必填 說明/格式/預設
序號 系統產生 唯讀,明細列序號
日期 是* 格式 yyyy/MM/dd;前 7 碼須等於主檔年度月份
客戶代號 可輸入客戶代號或對照碼;離開欄位後自動帶出客戶簡稱/聯絡資訊
客戶簡稱 由客戶代號自動帶入
聯絡人1 由客戶代號自動帶入
聯絡1電話 由客戶代號自動帶入
單號資料 相關單據號或自由文字
抱怨事項 是* 客訴內容描述(最長 80 字)
責任單位 負責處理的單位
處理情形 處理過程/結果描述(最長 200 字)
完成與否 勾選=已完成(Y);未勾=空白(未完成)

「日期」「抱怨事項」的必填是條件式的

* 表示:一列明細若日期與抱怨事項兩者皆空白,存檔時會被視為空列自動刪除;只要這列要保留,至少日期要填、且日期月份要對。詳見欄位連動與附加功能

欄位連動與附加功能

輸入「客戶代號」自動帶客戶資料

當你在明細的客戶代號輸入內容並離開欄位(LostFocus)時,系統會:

  1. 先判斷輸入值是否含 ?[]——若有,視為查詢字串,不做任何帶值處理(保留你輸入的查詢樣式)。
  2. 否則用輸入值同時比對客戶主檔(cudata)的客戶代號對照碼客戶代號 = 輸入值 OR 對照碼 = 輸入值)。
  3. 查到資料時,自動把該列的客戶代號/客戶簡稱/聯絡人1/聯絡1電話一次帶齊。
  4. 查不到時,跳出提示「查無客戶代號 !!!」,不帶任何值。

可以用對照碼輸入

客戶代號欄位接受對照碼——若客戶在主檔設了對照碼,直接打對照碼也能帶出同一筆客戶,不必記正式代號。

存檔時的「單號」自動產生

抱怨單沒有手動輸入單號。存檔前系統會把公司代碼的第 1 碼接上年度月份組成前置碼(例:公司代碼 1+年度月份 2026/0612026/06),再由 server 端依編碼規則補上流水號,形成完整單號。

公司代碼只取第 1 碼

單號前置碼取的是公司代碼字串的第 1 個字元(VFP STR(公司代碼,1))。公司代碼在 C101 為單碼代碼,實務上等價;若公司代碼為兩碼以上,前置碼只會用到第 1 碼。

存檔前的三道檢核(擋存條件)

儲存 時,系統依序檢查,任一不過就中止存檔並提示:

  1. 公司代碼未選(為 0)→ 提示要求先輸入公司代碼。
  2. 年度月份不合法年度月份/01 無法解析成合法日期)→ 提示「請先輸入正確之年度月份 !!!」。
  3. 明細日期與年度月份不符——只要有任一未刪除的明細列,其日期非空白、但前 7 碼(yyyy/MM)不等於主檔年度月份 → 提示「明細資料日期輸入錯誤 !!!」。

空白明細列自動刪除

存檔時,凡是日期空白且抱怨事項也空白的明細列,會被自動標記為刪除(不寫入資料庫)。因此你不必特地清理多打出來的空列——直接存檔即可,系統會略過它們。

完成與否的勾選對應

明細的完成與否在畫面上是核取方塊,底層存的是 Y(已勾=完成)或空白(未勾=未完成)。用它來追蹤每件客訴的結案狀態。

新增時沒有預設帶值

抱怨單在新增(含連續新增)時不帶任何欄位預設值——所有欄位都是空白,需逐一輸入。這與部分有 SetNewData 預設值的單據不同。

常見問題

按儲存沒反應,跳出「請先輸入公司代碼 !!!」?

主檔公司代碼還沒選。請從下拉清單選一個公司別後再存。公司代碼也是單號前置碼的來源,不能留空。

存檔時提示「明細資料日期輸入錯誤 !!!」?

某一列明細的日期月份跟主檔年度月份對不上。系統規定一張單只放同一個月的客訴——請把每列明細日期的年月(前 7 碼 yyyy/MM)改成跟主檔年度月份一致,或把不屬於這個月的那列清空(日期與抱怨事項都清空即會被自動刪除)。

輸入客戶代號後,客戶簡稱/聯絡人沒有自動帶出來?

可能原因:(1) 跳出「查無客戶代號 !!!」——代號或對照碼在客戶基本資料裡查不到,請確認客戶已建檔;(2) 輸入值含 ?[] 等符號,系統會當成查詢字串而不帶值;(3) 尚未離開欄位(帶值在離開欄位時才觸發)。

為什麼找不到列印按鈕?

抱怨單的報表(VFP 的 CMPLAIN_P)在新版尚未移植,目前沒有提供列印。若需要輸出,可在明細格線上按右鍵匯出 Excel。

我多打了幾列空白明細,需要手動刪掉嗎?

不用。存檔時日期與抱怨事項同時為空的列會被自動忽略(標記刪除),不會寫進資料庫。

單號欄位是空的,可以自己打嗎?

不行,單號為系統產生且唯讀。存檔時會由「公司代碼第 1 碼+年度月份」加 server 流水號自動組出,新增階段顯示空白屬正常。

相關功能


需補截圖清單

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

  1. cmplain-step1.png — 主檔區(公司代碼/年度月份/單號/備註)全貌
  2. cmplain-step2.png — 明細格線(含客戶代號帶值後的客戶簡稱/聯絡資訊與完成與否核取方塊)
  3. cmplain-step3.png — 存檔成功、單號自動產生後的畫面