公司把 Excel 改成進銷存系統時,常先要求採購單、銷貨單、庫存表與毛利報表,卻沒有先決定「同一個商品」如何識別,也沒有把箱、盒、包、個等單位換算寫清楚。結果是採購進一箱、門市賣一個、倉庫盤一盒,各部門的數字看似都合理,合計卻永遠對不上。

進銷存系統的核心不是多做幾張表,而是每次數量變動都有來源單據、品項、單位、地點、時間與原因,且更正不會抹掉原始歷程。需求訪談應從一小批真實但去識別化的商品與單據開始,把例外跑完再擴大,不宜直接把多份試算表原樣搬進資料庫。

商品代碼要穩定,名稱只是屬性

商品主檔至少應區分內部品項識別碼、對外條碼、品名、規格、基本庫存單位、採購單位、銷售單位、換算關係、稅務分類、供應商料號與啟停用狀態。內碼用來維持系統關聯,不應把分類、價格或年份硬編進代碼後頻繁更換;顯示名稱則可以依核准流程更新,但歷史單據仍要保留交易當時的描述。

GS1 Taiwan 對 GTIN 的說明指出,GTIN 是識別商品品項的全球獨一性編號,需對應資料庫中的商品資料或交易訊息;頁面並列出一物一號、商品未改變時號碼不應變更、特徵改變時應重新配置,以及號碼不可重用等原則。這不代表所有企業內部品項都必須直接以 GTIN 當主鍵,但說明了外部識別碼與商品定義必須有穩定對照。

系統可保留自己的不可變內碼,再把 GTIN、供應商料號與舊系統代碼放在對照表。驗收要包含同名不同規格、改名不換品項、停用品仍出現在舊單據,以及外箱和零售單位使用不同識別的情境。掃到未知條碼時應進入待確認流程,不可默默新增一個只有名稱的商品。

單位換算要有版本與適用範圍

「一箱等於幾個」不能只放在 Excel 備註。換算可能依商品、供應商包裝或生效期間不同,也可能遇到拆箱後不可還原、秤重商品或贈品。需求書要指定每個品項的基本庫存單位,所有進貨、調撥、銷售與盤點先換算回基本單位記帳,同時保留原單據的輸入數量與單位供人核對。

若包裝規格更改,不應直接修改舊換算讓歷史數量跟著變。可以建立新版規格與生效日,未完成訂單要明確選擇沿用舊版或改單。驗收時建立舊包裝未收貨、新包裝已生效的交叉情境,確認收貨、庫存、成本與銷售不會套錯換算。

用異動帳推導庫存,不直接改總數

庫存總量應能追到期初、進貨、銷售、調撥、盤盈、盤虧、退貨、報廢與更正等異動。每筆異動連回來源單據和明細,保存地點、數量、單位、操作者與時間。使用者發現錯誤時,系統以反向或調整事件修正,不把已過帳數字直接覆蓋,才能回答「為什麼昨天和今天差了這些」。

負庫存也要有明確政策。有些公司必須阻擋,有些業務允許先出貨後補登,但無論採哪種方式,都要定義允許角色、原因、告警與補正期限。系統不應為了讓報表好看就自動把負數歸零。盤點則要保存帳面量、實盤量、差異、複核者與過帳時間,盤點期間新增交易如何切分也要先寫清楚。

報表驗收不能只比最後總量。選定一個品項和倉庫,從結餘一路下鑽到每筆異動,再回到採購、銷貨或調整單;另外用相同日期範圍重新計算,結果應一致。若結餘只能由工程師查資料庫才能解釋,日後對帳仍會回到人工。

訂單、庫存與發票不要共用一個狀態

銷售成立不等於已出庫,付款完成不等於已開發票,退貨也不一定等同整張訂單取消。進銷存系統應分開保存訂單、履約、庫存與發票狀態,再用明確事件連結。如此才能處理分批出貨、部分退貨、補寄、折讓或發票更正,而不是修改一個總狀態後讓其他模組一起失真。

財政部電子發票整合服務平台的營業人導入與操作說明列出 B2C 發票開立、作廢、註銷與折讓等不同傳送情境和順序。這些官方流程顯示,發票異動有自己的生命週期;企業不能自行假設刪除銷貨單就等於完成發票更正。

規格應記錄進銷存單據編號、外部發票識別、每次請求與回應、目前狀態及可重試條件。串接逾時時先查詢結果,再決定是否重送,避免使用者連按造成重複處理。實際時限、欄位與作業方式仍須依上線時的官方規格及企業適用情境確認,不能把文章中的示意流程當成申報設定。

匯入 Excel 前先做三次對帳

第一次是主檔對帳:找出重複品名、缺少規格、同碼異物、同物異碼與停用品。第二次是期初庫存對帳:以約定的截止時間凍結舊資料,核對品項、地點、單位與數量。第三次是平行作業對帳:挑選一段期間,同時跑舊流程與新系統,比較進貨、銷售、退貨、調撥和結餘差異。

每個差異要分類成來源資料錯誤、換算規則不同、截止時間不同、漏單、重複單或系統缺陷,不能只用一筆盤盈虧把總數調平。正式切換也要有停止輸入舊系統的時間、未完成單據處理方式、回復條件與責任人,避免兩邊繼續寫入後無法判斷哪份才是主資料。

用門診管理案例檢查跨角色狀態

站內展示作品「沐光身心診所 門診管理」(clinic-management)把掛號候診、看診狀態與申報流程整合在同一個儀表板。它不是進銷存產品,也不代表實際診所成果,但可用來檢查系統中「一筆工作由不同角色接手」的共同設計。

套用到庫存流程,可讓採購建立訂單、倉管分批收貨、門市調撥、主管核准盤點差異、財務查看發票處理。每個角色只看到可執行的下一步與必要資料,主管則可從總覽下鑽到單據和異動。測試一筆正常完成、一筆部分收貨、一筆退回修正與一筆外部串接失敗,確認待辦數、庫存結餘與錯誤提示同步變化。

進銷存系統是否成功,不在於畫面上有多少報表,而在於任何一個庫存數字都能回答它是什麼品項、用什麼單位、在哪裡、由哪張單據、經過哪些更正而來。先穩定主檔、換算與異動帳,再談自動補貨、毛利或跨店整合,才能讓 Excel 數位化後真正可對帳、可交接、可驗收。