程式資訊
- 程式 ID:
INVGRPM - 所屬子系統:D.工程資料
- 狀態:stable
產品分群碼¶
此功能尚在規劃中,目前未提供獨立維護視窗
產品分群碼(INVGRPM,D-050)在系統中已登錄為一支程式(Common/ProgramClass.cs 的 ProgramClass.INVGRPM、programmap.txt 對應 D-050),但新版 TsERP 尚未實作其獨立的維護畫面——程式碼中只有這個 ProgramClass 登錄,沒有對應的 View/ViewModel/BLL/獨立 XAML。
在獨立視窗提供之前,分群碼與分群說明是從品號基本資料(庫存主檔)內就地維護的,詳見目前如何維護分群碼。本頁的功能簡介、操作步驟等章節描述的是這支主檔規劃中的用途,不代表目前已可在獨立視窗操作。
功能簡介¶
「產品分群碼」是一張品號分類用的小型代碼主檔,用來把性質相近的品號歸成同一群(例如同系列、同材質、同用途的料件),並給每個群一段文字說明。它對應後台的 SK_INVGRPM2 資料表,欄位只有兩個:分群碼與分群說明。
分群碼的主要使用者是建立/維護品號的人員(生管、BOM、採購)。它本身不參與計價或庫存異動,純粹是一個分類標籤:在品號基本資料上掛上分群碼之後,後續可用它來分組查詢、套用同群的共同設定(見帶分群資料),或在報表上把同群品號彙整在一起。它與BOM 結構、用料分析等沒有直接的計算耦合,但分群可作為這些功能的分組維度。
與「群組代號」不同
品號基本資料上同時有「群組代號」(SK_GRPM5)與「分群碼」(SK_INVGRPM2)兩種分類欄位,兩者是各自獨立的代碼表、互不影響。VFP 品號建檔(ginvent)在存檔時會分別維護這兩張表。本頁只談分群碼;群組代號是另一套代碼。
前置需求¶
- 權限:D.BOM 模組 →
D-050 產品分群碼的瀏覽/修改權限。 - 前置資料:分群碼本身是最上游的分類主檔,不依賴其他主檔即可建立。要讓分群碼產生實際作用,需搭配下列資料一起使用——
| 資料 | 影響 / 用途 |
|---|---|
| 品號基本資料(庫存主檔) | 分群碼掛在品號(Twork_bom_vw_invent.分群碼)上才有意義;目前分群碼也是從這張表就地新增、回填說明、回寫更新的 |
| BOM 結構 | 以分群歸類的品號於 BOM 展開、用料分析時可一併彙整 |
| 製程資料/工作中心 | 同群品號常共用相近製程;建檔時可用帶分群資料一次套入 |
操作步驟¶
規劃中
以下為規劃中的獨立維護流程,待對應視窗實作後才會生效。在此之前請改用目前如何維護分群碼的方式。
- 從主選單開啟 D.BOM → 產品分群碼 視窗。
- 點選
新增,於明細列輸入分群碼與分群說明。 - 點選
儲存。 - 要修改既有分群的說明文字,選取該列、直接改寫分群說明後再
儲存。 -
要移除不再使用的分群,選取該列按
刪除。刪除前請確認
若仍有品號掛著該分群碼,建議先把那些品號改掛其他分群,再刪除代碼,以免品號上殘留無對應說明的分群碼。
欄位說明¶
對應資料表 SK_INVGRPM2,欄位如下(長度依新版 Twork_bom_vw_inventSource 的 分群碼 欄定義):
| 欄位 | 必填 | 說明 / 格式 / 預設 |
|---|---|---|
| 分群碼 | 是 | 分群的唯一代碼,作為主鍵;最多 10 個字元(TsStringLength(10));建立後即為品號歸群的依據。在品號端輸入新代碼存檔即自動建檔 |
| 分群說明 | 否 | 該分群的文字說明(例如系列名稱、材質、用途),顯示與報表彙整用;在品號端為輸入既有代碼時的回填顯示欄,預設空字串 |
欄位連動與附加功能¶
本節是本頁最重要的部分。由於新版尚未實作獨立視窗,下列連動全部發生在品號基本資料(庫存主檔)端,行為直接來自舊版品號建檔 VFP ginvent 的程式邏輯,新版品號基本資料沿用同一套後台資料表 SK_INVGRPM2:
輸入既有分群碼 → 自動帶出分群說明¶
當你在品號的分群碼欄輸入或選取一個已存在的代碼時,系統會以該代碼到 SK_INVGRPM2 反查 分群說明,自動回填到旁邊的說明欄(唯讀顯示)。
- VFP 來源:
分群碼.簡稱.Refresh以U_SEEKNM('SK_INVGRPM2', 代號, '分群說明')(本機資料)或U_SEEKNMSQL(...,"分群碼='...'",'分群說明')(SQL 端)查回說明。 - 若分群碼欄清空,說明欄也跟著清空。
- 若輸入的是全新、從未用過的代碼,主檔裡尚無對應說明,回填會是空白——這時直接在說明欄補字即可(存檔時一起建檔,見下)。
存檔時 → 分群碼自動建檔 / 說明回寫更新¶
品號存檔(moverec_sk_cursor)時,系統會用品號上填的分群碼與分群說明維護 SK_INVGRPM2:
- 找不到該分群碼 →
INSERT INTO SK_INVGRPM2 FROM MEMV:把它連同當下的分群說明自動新增一筆。新分群碼是「邊建品號邊產生」的,不需要先到別處登錄。 - 已存在該分群碼 →
REPLACE SK_INVGRPM2.分群說明:把品號上填的分群說明回寫更新到主檔對應那一筆,等同於就地修改了整個分群的說明文字。
說明是整個分群共用一筆
分群說明以分群碼為主鍵存在 SK_INVGRPM2。在任一支品號上改寫某分群碼的說明並存檔,等於更新了整個分群的說明,同群其他品號看到的說明也會一起變。這是預期行為,不是 bug。
同一存檔同時維護群組代號
同一段 moverec_sk_cursor 邏輯也以相同方式維護「群組代號」對應的 SK_GRPM5(不存在則 INSERT、存在則 REPLACE 說明)。分群碼與群組代號是兩張各自獨立的代碼表,存檔時分別處理、互不影響。
帶分群資料(同群設定快速複製)¶
品號建檔提供一顆 帶分群資料 鈕(VFP command1),用途是把某個分群既有的一整組設定當作建檔範本,一次複製到目前正在編輯的品號上:
- 觸發條件:目前處於新增(OPMODE=1)或修改(OPMODE=2)狀態,且分群碼欄不為空。
- 動作:以分群碼到
SK_INVGRPM2SEEK,找到後SCATTER MEMVAR MEMO取出該分群的整組欄位值,再GATHER MEMVAR MEMO套回目前的品號主檔,最後Refresh重整畫面。 - 效果:性質相近的品號可以先挑一個既有分群碼,按下此鈕快速帶入共同欄位,再微調個別差異,加速建檔。
規劃中(新版尚未提供此鈕)
帶分群資料 來自 VFP 品號建檔。新版 TsERP 的品號基本資料是否提供等效按鈕,以實際畫面為準;上述為舊版行為與規劃定位。
獨立視窗的規劃定位¶
獨立的「產品分群碼」視窗若實作,定位會是把上述就地維護抽出來、提供一個專門新增/修改/刪除分群碼與說明的地方,並讓品號端只負責「挑選」既有分群碼。實際做法以未來實作為準。
常見問題¶
主選單點「產品分群碼」沒有畫面 / 打不開?
目前新版 TsERP 尚未實作這支獨立視窗——程式碼中只有 ProgramClass.INVGRPM 登錄(Common/ProgramClass.cs),沒有對應的 View/ViewModel/BLL。請改從品號基本資料的「分群碼」欄就地維護,方式見欄位連動與附加功能。
在品號上輸入分群碼後,旁邊的分群說明是空白的?
分群說明是用你輸入的分群碼到 SK_INVGRPM2 反查來的(見輸入既有分群碼 → 自動帶出分群說明)。若是全新、從未用過的分群碼,主檔裡還沒有對應說明,欄位自然空白——這時請直接在說明欄補上文字,存檔後該分群碼與說明就會一起建檔。若是既有分群碼仍空白,代表該筆主檔的說明本來就沒填。
改了某品號上的分群說明,為什麼別的同群品號也跟著變?
因為分群說明是整個分群共用一筆(存在 SK_INVGRPM2 裡、以分群碼為主鍵)。在任何一支品號上改寫該分群碼的說明並存檔,等於更新了整個分群的說明,所以同群其他品號看到的說明也會一起變。詳見存檔時 → 分群碼自動建檔 / 說明回寫更新。
分群碼和群組代號有什麼差別?該用哪一個?
兩者是各自獨立的分類欄位:分群碼存 SK_INVGRPM2、群組代號存 SK_GRPM5,互不影響。品號可以同時掛兩種分類,依公司的分類習慣選用即可;本頁只負責「分群碼」。
分群碼最多可以輸入幾個字?
分群碼上限 10 個字元(新版 Twork_bom_vw_inventSource.分群碼 的 TsStringLength(10))。超過長度的代碼無法存入。
「帶分群資料」按了沒反應?
需同時滿足:目前處於新增或修改狀態、分群碼欄已填、且該分群碼在 SK_INVGRPM2 中已存在。三者任一不成立都不會帶值。新版是否提供此鈕以實際畫面為準,見帶分群資料。
相關功能¶
本頁狀態
本頁內容以「規劃用途 + 目前就地維護方式」呈現:ProgramClass.INVGRPM 已在程式中登錄(Common/ProgramClass.cs 第 229 行)、programmap.txt 對應 D-050,但新版 TsERP 尚未提供對應的 View/ViewModel/BLL/獨立 XAML,主選單點擊不會開出獨立畫面。分群碼目前一律從品號基本資料就地維護(後台資料表 SK_INVGRPM2,新版 Twork_bom_vw_invent 視圖含 分群碼/分群說明 欄)。待 INVGRPM 視窗實作後需補上實際畫面截圖。
需補截圖清單
本頁描述的獨立維護視窗尚未實作,目前沒有可截圖的畫面;待 INVGRPM 視窗實作並完成 runtime 驗收後,再補拍下列截圖(放 docs/D-Bom/images/):
invgrpm-step1.png— 產品分群碼維護視窗(分群碼/分群說明明細格線)invgrpm-step2.png— 在品號基本資料分群碼欄輸入既有代碼後自動帶出分群說明的畫面invgrpm-step3.png— 在品號基本資料按「帶分群資料」一次套入同群設定的畫面(若新版提供)