跳轉到

程式資訊

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

年度預估

功能簡介

「年度預估」是一張主檔+明細結構的單據,用來登錄某客戶(或廠/部)在某個年度、某個預估分類下的年度需求預估明細——也就是「我們預期這個客戶一整年大概會下哪些品號、各多少數量」。

這份預估資料屬於「需求面」的源頭之一:它與銷售訂單的實際接單、預示單的中短期排程互補,提供生管/業務在排產與備料時的長期參考。例如 生產計劃查詢 即把「訂單+預示+預估」三種來源彙整成生產計畫。

由業務人員建立與維護,一個客戶在同一年度可依年預估分類版次建立多張預估單。

前置需求

  • 權限:E.銷售訂單 → E-950 年度預估 的新增/修改/刪除/列印權限。
  • 基礎資料:下列主檔需先維護,否則欄位帶不出值或存檔被擋——
資料 影響什麼
客戶/廠商/部門主檔(客廠部) 客廠部代號 輸入後帶出的客廠部簡稱;存檔時客廠部代號必填
品號主檔(invent) 明細品號輸入時的驗證與品名帶出;查無品號會被擋
幣別與匯率主檔 主檔幣別下拉清單;新增時預設帶本位幣、匯率 1
計量單位(UOM)設定 明細單位下拉清單(VFP c_type=104

操作步驟

新增一張預估單

  1. 從主選單開啟 E.銷售訂單 → 年度預估
  2. 點工具列 新增。系統自動帶入主檔預設:幣別 = 本位幣、匯率 = 1(詳見欄位連動與附加功能)。
  3. 填寫主檔欄位:
    • 單號:使用者自行輸入(系統不自動編碼),不可空白、不可與既有單號重複。
    • 年度(4 碼)、年預估分類(數字)、版次(1 碼):三者皆必填。
    • 客廠部代號:輸入後右側自動帶出簡稱;必填。
    • 視需要調整幣別/匯率、填寫預估備註
  4. 在下方明細格線逐列輸入預估品項:

    1. 品號:輸入後系統驗證並帶出品名(查無會跳「查無品號 !!!」)。
    2. 數量、選單位、填單價、填預訂交期、視需要填備註客廠品號
    3. 換下一列繼續輸入。

      空白品號的明細會被自動刪除

      存檔時,凡是品號為空的明細列會被系統標記為刪除(不會存進資料庫)。因此最後一列空白列可以不用理會。

  5. 點工具列 儲存。系統依序檢查單號、年度、年預估分類、版次、客廠部代號是否齊全且單號未重複,通過後寫入。

    小技巧

    可用 Ctrl+S 快速儲存。

修改/刪除

  1. 用工具列的查詢/瀏覽(上一筆下一筆查詢)找到既有預估單。
  2. 修改 進入編輯狀態,調整主檔或明細欄位後 儲存
  3. 要整張刪除時點 刪除;要刪某一列明細,將該列品號清空再存檔即可(該列會被標記刪除)。

審核欄位唯讀

審核人員/審核日期 兩欄為系統顯示用、唯讀,無法手動輸入。本單據在新版未掛集中式簽核流程(詳見欄位連動與附加功能)。

列印

報表規劃中/尚未提供

VFP 舊版的年度預估報表(ESTSAL_P)尚未移植到新版,目前列印功能規劃中。待移植後再於此補充操作說明。

欄位說明

主檔欄位

欄位 必填 說明/格式/預設
單號 使用者自行輸入(最長 20 碼)。系統不自動編碼;空白或與既有單號重複都無法存檔
年度 4 碼文字(例 2026
年預估分類 數字。值為 0 視同未填,存檔被擋
版次 1 碼文字。同客戶/同年度可用版次區分多張預估
客廠部代號 最長 10 碼。輸入後右側帶出客廠部簡稱
客廠部簡稱 唯讀,依客廠部代號自動帶出,不存檔
幣別 下拉選擇(幣別主檔)。新增時預設 = 本位幣
匯率 數字(小數 4 位)。新增時預設 = 1
預估備註 最長 60 碼自由文字
輸入日期 唯讀,系統記錄(yyyy/MM/dd HH:mm
審核人員 唯讀顯示,不可手動輸入
審核日期 唯讀顯示,不可手動輸入

明細欄位

欄位 必填 說明/格式/預設
序號 系統產生,唯讀
客廠品號 客戶端料號(最長 30 碼),自由輸入
品號 是* 輸入後驗證並帶出品名;查無跳警示。*留空的明細列存檔時會被自動刪除
品名 唯讀,依品號自動帶出
數量 數字,小數 4 位
單位 下拉選擇(計量單位 UOM 清單)
單價 數字,小數 6 位
預訂交期 日期(yyyy/MM/dd
備註 最長 30 碼自由文字

欄位連動與附加功能

這一節把「輸入某欄位後系統會做什麼」「按某動作會發生什麼」完整列出,全部來源為實際程式碼(C# 與 VFP 原版對照)。

新增時的預設值

  • 當你按 新增,系統會自動把主檔的 幣別 設成本位幣匯率 設成 1
    • 對應 VFP addagainREPLACE 幣別 WITH m.指定幣別, 匯率 WITH 1(VFP 的「指定幣別」即新版本位幣)。

客廠部代號 → 帶出簡稱

  • 當你在 客廠部代號 輸入完離開該欄,系統會依代號查客廠部主檔,把對應的簡稱顯示在右側唯讀欄。
    • 對應 VFP sqlnm_cuspdp1(代號+簡稱聯動控件)。簡稱只供顯示、不存檔。

品號 → 驗證並帶出品名

  • 當你在明細的 品號 欄輸入完離開,系統會到品號主檔(invent)查該品號:
    • 查到:把品名帶到同列的品名欄。
    • 查不到:跳出提示「查無品號 !!!」,並把品名清空。
    • 對應 VFP grid sql_mno1dovalid=1)+ Column9 = U_SEEKNM('SK_INVENT', 品號, '品名')
  • 載入既有單據時,品名直接來自 vw_estsald view(estsald JOIN invent),不必逐列重查。

單位下拉清單

  • 明細 單位 欄是下拉選單,內容來自系統的計量單位(UOM)清單。
    • 對應 VFP grid col單位sqlcombo c_type=104。VFP 原版只有在「新增/修改」狀態(changeopmode:OPMODE=1 或 2)才讓單位欄可編輯;新版則由格線整體的編輯狀態控制。

存檔檢查(按「儲存」時)

儲存 時,系統依序做下列檢查,任一不通過即擋下並提示:

  1. 單號 不可空白。
  2. 單號 不可與既有單號重複(會排除目前這筆自己)。
    • 對應 VFP 單號 is_noduplicate="estsalm"
  3. 年度 不可空白。
  4. 年預估分類 不可為 0(等同未填)。
  5. 版次 不可空白。
  6. 客廠部代號 不可空白。
  7. 通過後,系統把所有品號為空的明細列標記為刪除,再寫入資料庫。
    • 對應 VFP allowsaveSCAN ... IF EMPTY(品號) REPLACE 增刪修 WITH 'D'

審核(顯示用,未掛簽核流程)

  • 審核人員/審核日期 兩欄唯讀,目前只用來顯示資料庫既有值。
  • 年度預估主檔(estsalm)沒有「已審核」欄位,因此新版依「審核三欄才掛集中式審核」原則,把本單據納入集中式簽核流程。若需要簽核控管,屬規劃外。

舊版自動組單號為 dead code

VFP 原版註解掉一段「以 年度+分類首碼+版次+客廠部代號 自動組單號」的程式,實際未啟用;新版維持單號由使用者自行輸入,未還原該自動組碼邏輯。

跨單據整合(規劃中)

預示補充數量機制尚未提供

VFP 舊版規劃中,預示單(preord)可參考年度預估補充數量。新版本次僅還原年度預估單據本體,與預示單的數量整合屬待辦、尚未提供

常見問題

按儲存時跳「請輸入單號/年度/年預估分類/版次/客廠部代號」?

這五個主檔欄位都是必填。請確認都已填寫;其中年預估分類若填 0,系統會視同未填而擋下,請改填非 0 的分類值。

存檔時提示單號重複?

單號由使用者自行輸入、不可重複。請改用其他單號;同一客戶同一年度若要建立多張預估,建議用不同的年預估分類版次來區分,並給不重複的單號。

明細輸入品號後跳「查無品號 !!!」、品名空白?

代表該品號在品號主檔(invent)查不到。請確認品號輸入正確、且該品號已在品號主檔建立。品名是系統依品號自動帶出的,無法手動輸入。

我留了一列沒填品號,存檔後它不見了?

這是正常行為。存檔時系統會把品號為空的明細列自動標記刪除,所以未填品號的空列不會被保存。要保留某列,請至少填上品號。

新增時幣別/匯率怎麼自動變成本位幣和 1?

這是設計的預設值——按 新增 後系統自動帶本位幣匯率 1。如該客戶以外幣計價,可手動改幣別與匯率。詳見欄位連動與附加功能

審核人員/審核日期為什麼不能填?要怎麼送審?

這兩欄為唯讀顯示欄。本單據的主檔沒有「已審核」欄位,新版未掛集中式簽核,因此沒有送審動作;兩欄僅顯示資料庫既有值。

相關功能


需補截圖清單

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

  1. estsal-step1.png — 新增空白單畫面(主檔已帶本位幣/匯率 1 的預設)
  2. estsal-step2.png — 主檔填寫完成(含客廠部代號帶出簡稱)
  3. estsal-step3.png — 明細格線(品號帶出品名、單位下拉)
  4. estsal-step4.png — 儲存成功訊息