關于WMS庫存系統設計,這幾點你需要知道
編輯導讀:不管是采購行為還是銷售行為,都會涉及到庫存變動,庫存管理的好與壞會直接影響到經營運轉。因此,理解庫存系統在業務作業中的庫存變動是非常重要的。本文對WMS庫存系統設計提出了自己的一點看法,與你分享。
從我入產品設計坑起,就一直在做B端的系統設計,其中接觸最多的就是供應鏈管理系統?!腹湣购唵蝸碚f,就是進銷存管理“進貨、銷貨、庫存”,其中無論采購行為還是銷售行為,都會涉及到庫存變動,所以庫存管理的好與壞會直接影響到經營運轉。
熟悉和設計供應鏈,理解庫存系統在業務作業中的庫存變動是非常重要的,因為庫存是所有業務發生的映射底層,從庫存的流動能夠看到各業務線的流轉過程。
這里推薦劉寶紅老師的供應鏈管理系列書籍,用比較白話的方式講清楚了供應鏈的本質。供應鏈產品經理是重業務型的,好在大多情況下是比較通用的,針對不同的行業特性,具體問題具體設計方案就好,供應鏈的業務本質都是一樣的。
這里我主要從三個緯度來闡述庫存管理的意義和作用:
銷售場景(觸發庫存出庫行為):
- 保證有充足的可用庫存用于銷售開單,當臨時發生庫存不足,下單后會觸發緊急采購
- 銷售開單庫存還未實際出庫時,需要進行庫存預占,以免他人開單使用庫存導致庫存不足無法出庫
采購場景(觸發庫存入庫行為):
- 當銷售開單判斷無庫存或庫存不足時,會以緊急采購的方式補足庫存進行出庫,這種方式稱為“以銷定采”,采購入庫后,系統會自動對應采購訂單關聯的銷售訂單進行庫存預占和出庫,從庫存類型上需要做數據隔離
- 商品sku一般會設定庫存的閾值上下限,當庫存數量觸發閾值下限時,就會生成緊急采購訂單
- 線下產生補采需求,這是最常規的采購行為,會在系統上直接自建采購訂單
資金流(核算采購和訂單成本):
- 庫存不是越多越好,呆滯庫存會導致管理成本的上升和資金積壓的風險;但庫存也不是越少越好,庫存不足會在實際發生銷售的時候錯過銷售機會,導致訂單損失。所以供應鏈的管理核心就是有效的預估庫存需求,合理的進行采購,避免“牛鞭效應”信息逐級失真,降成本,增效率
- 每筆銷售訂單完結后,都需要進行財務核算,包括訂單收入和成本,進而計算訂單的毛利是多少,其中涉及到商品庫存的訂單成本都要從庫存管理系統中取數,根據不同的核算方式(常見的有移動加權和先進先出)來計算。
在實際庫存管理作業中,除了常見的入庫和出庫行為,其實還存在一些中間狀態,包括占用庫存、在途庫存和待處理損溢庫存。
- 占用庫存:就是在上面銷售場景中提到的,當銷售開單以后,一定要有占用庫存這一步,以防被其他訂單占用導致無法出庫的情況發生,一般只有在訂單結算后庫存才會出庫,如果取消訂單則會釋放庫存(雖然可以走緊急采購,但是不到萬不得已一般都會避免臨時采購行為,因為臨時采購的拿貨價都會比市場進貨價要貴不少,這樣訂單毛利就會變少)
- 在途庫存:是指已經發生的采購訂單,但是還沒有進行入庫,這部分應該入庫但是還未入庫的庫存也需要在系統中展示出來,以便系統或員工來判斷是否需要進行下一次采購
- 待處理損溢庫存:這個字段一般是用于處理發生盤點差異后的盤盈或者盤虧,對于比較重流程的業務線,盤點結果與賬面庫存數對不上時,不會直接進行調整庫存,需要在線下查明原因之后由庫存管理員在系統中確認并備注原因,之后才會變動賬面的庫存數量
以上是理論上的知識,下面舉一個實際場景的案例,來感受下庫存管理系統中的庫存流轉:
A商品期初庫存為100個,占用庫存為0個,可用庫存為100個。
場景一:
小明應顧客需求下了銷售訂單,出售A商品10個:賬面庫存=100,占用庫存=10,可用庫存=90
這個時候顧客不要了,小明無奈將銷售訂單作廢了。賬面庫存=100,占用庫存=0,可用庫存=100
場景二:
小明又接待了一個顧客,一次性銷售A商品120個開了個大單:賬面庫存=100,占用庫存=100,可用庫存=0
這次顧客很爽快的結了帳,等待拿貨離店:賬面庫存=0,占用庫存=0,可用庫存=0
但是此次占用庫存數量是不足以銷售單出庫的,小明就從隔壁店臨時高價補采了20個,同時系統也自動觸發了緊急采購訂單,采購數量為20個,小明在系統上完善采購價格后一鍵入庫,系統針對這筆銷售訂單進行了自動處理并出庫:賬面庫存=20,占用庫存=20,可用庫存=0,緊接著賬面庫存=0,占用庫存=0,可用庫存=0
另外,存儲庫存會有相應的倉庫和庫位,在系統建設上也要考慮到多倉庫和多庫位的管理設置。
1. 倉庫和庫位管理
倉庫分實物倉庫和虛擬倉庫,從物品所有權的角度來看,實物倉庫一般記錄的是本地庫存,虛擬倉庫記錄的是物權為其他單位的庫存(例如鋪貨場景,經銷商將庫存放置在門店,只有門店將鋪貨庫存銷售出去之后才會發生物權的變更,這種場景門店不需要承擔庫存積壓的風險,只是可能毛利空間會被壓縮)
完善的倉庫基本都會有庫位管理,每一個庫位都會有庫位編碼,例如3L-01,含義就是庫位在三樓的01號位置。庫位也要區分類型,按可銷售屬性可以分為良品、殘次品和不良品,良品庫位就是狀態良好的正常屬性庫存;殘次品是有一些小瑕疵但不影響銷售的庫存(可以通過促銷打折的方式銷售);不良品是屬于不可銷售庫存,通常是要追溯到所屬供應商進行返場退貨的。
2. 庫存調整/盤點
一般情況下,除了正常的采購入庫和銷售出庫,是不允許隨意增減庫存數量的,如有其他特殊情況需要入庫和出庫(比如入庫數量記錄錯誤,需要更正),會以其他入庫和其他出庫的方式進行同時備注原因。
期末會進行一次盤點來核對庫存,根據不同的要求,可以是日盤,周盤,月盤或季度盤等,盤點方式分為兩種:一種是盲盤,沒有賬面庫存數量可以參考,完全憑實際盤點數量記錄;一種是明盤,根據賬面庫存數量來核對實際庫存數量是否準確。兩種盤點方式各有利弊,盲盤因為沒有參考數量可能出現多數漏數導致數量上不準確,而明盤則有可能發生盤點舞弊行為。
在庫存差異獲批對賬面庫存產生影響后,需要同時生成相應的盤盈入庫單或盤虧出庫單。理論上來說,無論是盤盈還是盤虧都需要查明原因,因為這是庫存管理不當造成的,但實際情況下盤虧會更被重視,因為丟貨帶來的是實際的金錢損失。
3. 末尾總結
我一直認為庫存管理是供應鏈系統的核心所在,它牽涉的面非常廣,涉及庫存管理體系的時候點線面都要考慮到,在進行其他相關業務線方案設計和改動的時候也要同時考慮對庫存系統的映射影響范圍,不然很可能因為考慮不周全給研發造成困難和風險。
供應鏈系統隨著使用量的增長,功能邏輯和代碼都會越來越復雜,越來越重,基本是牽一發而動全身的狀態,所以供應鏈產品經理一定要完整的考慮整個業務線,嘗試在大腦中構建業務模型,對每一個需求在系統中產生的影響心中有數,就能夠很大程度的增加系統安全系數。
本文由 @周小妖 原創發布于人人都是產品經理,未經作者許可,禁止轉載。
題圖來自Unsplash,基于CC0協議。
業務場景不同其實還有點區別,比如涉及到庫位的鎖定,因為有批次批號等。庫位也是實際的,虛擬的是區域或者是通過業務去設定倉庫
你好,咨詢下在場景1中,賬面庫存=100,占用庫存=10,可用庫存=90,這樣的情況下,前端商品頁面展示的是賬面庫存100還是可用庫存90呢
讀取的是可用庫存,賬面庫存是指存放在倉庫還未實際出庫的所有庫存數量,其中包含了可用庫存和不可用庫存,不可用庫存這個概念,除了占用庫存以外,還有不良品庫位類型下的不可使用庫存,也是不能被銷售出庫的。
感謝,還有個問題想咨詢下呢,一個店鋪,在全國有本地倉庫,區域倉庫,全國倉庫等這樣的組織結構,例如在杭州的店鋪,前端頁面展示的是杭州地區倉庫,以及杭州相關地區區域倉的sku數量綜合嘛?應該不是全國各地的所有倉庫的sku總和吧
這種情況要看你們公司倉儲物流管理的模式,有的是不支持跨區域倉和倉調撥的(因為涉及到物流費用和不可預估的貨損風險),這種情況下門店看到的可用庫存數量一般是區域倉庫的可用數量,如果門店單多的話會由上游提申請跨區域調撥庫存來緩解庫存壓力,一般情況下終端門店是不會看到全國維度的總可用庫存的,因為看到也不代表可用。
前排合影
深入淺出,大道至簡!
期待周小妖更多分享!
謝謝丁老師!
周總好厲害!
意猶未盡,還有很多可以講的,期待下一篇分享。
謝謝!對,wms系統真的要做好需要考慮很多細節,這一篇只是籠統的來講,后面有機會會寫詳盡一些。
很棒,希望多分享案例
好的,收到??