5000字長文,拆解ERP批次管理相關(guān)的產(chǎn)品設(shè)計
批次管理是ERP、WMS和OMS等系統(tǒng)中常用的一個關(guān)鍵模塊。這篇文章,我們和作者一起學(xué)習(xí)下ERP系統(tǒng)中的批次管理,認(rèn)識之后,即使是去做WMS等系統(tǒng)也會很快上手。
在之前的文章中,我陸續(xù)分享過WMS的批次管理和OMS的批次管理,之前如果沒看過這兩篇文章的可以分別訪問:
海外倉OMS的批次管理業(yè)務(wù)介紹及產(chǎn)品設(shè)計
深入拆解WMS的批次管理,搞清楚什么是批號,批次號,批次屬性……
在實際的工作中,除了WMS和OMS的批次管理外,還有ERP也會有對應(yīng)的批次管理,所以今天這篇文章來給大家講講關(guān)于ERP的批次管理。如果之前做過WMS相關(guān)的項目,那么上手去做ERP的批次管理,相對來說上手會比較快,更有畫面感一些;如果你之前沒接觸過WMS相關(guān)的項目,第一個接觸的就是ERP相關(guān)的內(nèi)容,那么最好先去了解一下倉庫端關(guān)于批次管理的一些實操案例,加強一些畫面感,會對后續(xù)做ERP的批次管理有一個比較明顯的幫助。
一、WMS/OMS/ERP的定義和關(guān)聯(lián)關(guān)系
OMS和ERP算是比較容易有歧義的兩個系統(tǒng),主要的原因就是因為在不同領(lǐng)域、不同業(yè)務(wù)場景中,這兩個系統(tǒng)所表達(dá)的意思和側(cè)重的場景都不太一樣,所以大家對這兩個系統(tǒng)的理解和認(rèn)知是不一樣的,所以我先做一個基礎(chǔ)的鋪墊介紹,防止大家在看后續(xù)文章的時候出現(xiàn)一些認(rèn)知上的偏差。
WMS,是”Warehouse Management System”的縮寫,即倉庫管理系統(tǒng)。WMS系統(tǒng)通過對倉庫內(nèi)的物資進行準(zhǔn)確、高效的入庫、出庫和庫存管理,幫助企業(yè)實現(xiàn)倉庫的自動化、智能化管理,從而提升倉庫運營效率、降低運營成本。
OMS,是“Order Management System”的縮寫,即訂單管理系統(tǒng)。需要注意,OMS在不同的公司,不同的行業(yè)和領(lǐng)域中會有不同的定義,這里說的OMS其實是指WMS客戶端,也就是給WMS的貨主/客戶所使用的一套客戶端。用戶可以O(shè)MS上維護商品,創(chuàng)建入庫單,出庫單,查看庫存,并且將相關(guān)的單據(jù)提交給WMS去執(zhí)行。
ERP,是”Enterprise Resource Planning”的縮寫,即企業(yè)資源計劃。ERP系統(tǒng)在不同領(lǐng)域,不同行業(yè)中大家的認(rèn)知和理解也不太一樣。文章中所提到的ERP,是指“電商ERP”這類業(yè)務(wù)導(dǎo)向型的ERP,最常見和高頻的業(yè)務(wù)有:商品管理,采購訂單,銷售訂單,倉儲管理,物流管理等。
三個系統(tǒng)的關(guān)聯(lián)關(guān)系
二、什么是批次?批次管理有什么用?
在供應(yīng)鏈系統(tǒng)中,我們經(jīng)常會用“批次號”來表示:相同的SKU但是兩者之間有細(xì)微區(qū)別,需要通過批次號來區(qū)分管理或?qū)Υ?/p>
如果單獨來看批次號的話,它就是一個自增的流水號而已,沒有什么特殊的意義。例如說:
- 20240415-01,就是2024年04月15日的第一批
- 20240415-02,就是2024年04月15日的第二批
- 20240415-03,就是2024年04月15日的第三批
- ……
我們在聊批次號的時候,往往是說“某個SKU的批次號”,“某個SKU的批次”,所以SKU和批次號是需要關(guān)聯(lián)起來的,這樣才有實際的價值和意義。
當(dāng)我們提及到批次管理的時候,大家更多會想到的是倉儲管理有關(guān)的內(nèi)容,例如說先進先出,效期管理,庫齡統(tǒng)計等,以至于會有很多人覺得批次管理好像只是和WMS有關(guān)系,只是和倉庫有關(guān)系。
但是實際情況下并非如此,供應(yīng)鏈管理是需要上下游緊密合作的,相關(guān)的供應(yīng)鏈系統(tǒng)之間也會有頻繁和密切的數(shù)據(jù)傳輸、交互等。
以“電商ERP”為例,在電商ERP中也有很多個模塊、業(yè)務(wù)場景,是要對批次管理的,要對批次相關(guān)的信息做維護,配置,接收、使用等,接下來就讓我們一起來看看ERP中的批次管理都要做哪些。
三、商品信息的維護
批次信息是屬于商品的一個關(guān)聯(lián)信息,所以如果要對商品進行批次管理,那么在維護商品資料的時候,就要先確認(rèn)對商品開啟批次管理。
對商品開啟批次管理,是一個配置項,即“啟用批次管理”或者是“不啟用批次管理”,當(dāng)啟用了批次管理之后,后續(xù)一些業(yè)務(wù)單據(jù)在調(diào)用商品信息的時候,會根據(jù)這個配置來做一些差異化的處理。
和批次管理很相近的一個概念是“效期管理”,也就是對商品的保質(zhì)期進行管理。如果啟用了效期管理,則說明商品是有保質(zhì)期的,一般實物上會印刷有相關(guān)的效期信息(生產(chǎn)日期、保質(zhì)期天數(shù)等),對應(yīng)的倉庫在管理這些庫存的時候也要對保質(zhì)期的信息進行采集、維護、針對性處理等。
批次管理和效期管理是一個比較容易混淆的概念,它們有一定的相關(guān)性,但是在大多數(shù)情況下又是互相獨立的,我畫了一個圖,再搭配相關(guān)的說明來解釋這兩者的關(guān)系。
批次管理和效期管理的關(guān)系
商品會有效期信息,也會有批次信息。如果是要對效期信息進行管理,則需要關(guān)注商品的生產(chǎn)日期,失效日期,要確保商品在保質(zhì)期之前銷售出去或者處理掉。如果要對批次信息進行管理,則需要關(guān)注定義商品批次的批次屬性有哪些,可能是生產(chǎn)批號,入庫日期,供應(yīng)商,采購單號,生產(chǎn)日期等。
生產(chǎn)日期或失效日期,是定義商品批次的一個常見且高頻的批次屬性,所以批次管理和效期管理在某些場景下是有一定的相關(guān)性的,但是它們彼此又可以發(fā)揮各自的作用。
假設(shè)一家食品公司生產(chǎn)了一批面包,效期管理會確保這些面包在過期前被銷售,比如記錄每批面包的生產(chǎn)日期和到期日期,確保它們在到期前一周被下架。而批次管理則會記錄這批面包的批次號,如果發(fā)現(xiàn)某批次的面包存在問題,公司可以迅速定位并召回該批次的所有面包,而不影響其他批次。
了解了這些背景之后,我們來看ERP層如果要對商品啟用批次管理和效期管理那么應(yīng)該怎么配置的。這里我以萬里牛ERP為例,同時加上一些金蝶ERP的截圖,幫助大家更好地了解在維護商品的時候應(yīng)該如何啟用批次管理和效期管理。
萬里牛ERP新增、編輯商品
金蝶ERP新增、編輯商品
在商品管理模塊中,新增或者修改商品資料的時候,可以選擇啟用批次管理,不需要再維護其他的內(nèi)容;如果是啟用了效期管理,則需要同時維護商品的“生產(chǎn)日期”,“保質(zhì)期天數(shù)”或者是“失效日期”,“保質(zhì)期天數(shù)”。
失效日期 = 生產(chǎn)日期 + 保質(zhì)期天數(shù),所以只需要維護“保質(zhì)期天數(shù)”和生產(chǎn)日期,或者是“保質(zhì)期天數(shù)”和“失效日期”即可,剩下的一個值可以通過系統(tǒng)自動計算得出。
當(dāng)商品啟用了批次管理和效期管理之后,相關(guān)的配置信息除了要在ERP上存儲,同時還需要同步推送給下游的倉庫系統(tǒng),也就是我們所說的OMS。因為批次管理需要結(jié)合實物管理來執(zhí)行,倉庫也要知道具體的批次管理要求是什么,所以需要拿到這些相關(guān)的信息。
OMS創(chuàng)建商品頁面
四、采購場景下的批次管理
ERP創(chuàng)建好了采購訂單之后,需要推送給下游的WMS去收貨入庫,一般這個時候采購訂單中的商品是沒有批次信息和效期信息的,所以直接推送SKU+數(shù)量給倉庫,讓倉庫收到實物之后再采集相關(guān)的批次和效期信息即可。
采購訂單示例圖
當(dāng)倉庫收到了實物之后,一般會在WMS中錄入一些批次信息,常見的有:
- 生產(chǎn)日期
- 失效日期
- 生產(chǎn)批號(包裝批號)
這些信息只要倉庫采集錄入了,一般都是可以在WMS和OMS中查看到的,但是對于ERP來說,則需要在和WMS接口對接時特殊處理,即接入WMS批次相關(guān)的信息回傳,然后把這些信息存儲在ERP中。
奇門的入庫單確認(rèn)接口
對一些未對接下游三方WMS的ERP來說,不對接的原因可能是該ERP只是用來做賬使用,也可能是倉庫管理使用的是ERP自身的功能模塊,所以這類ERP采集和錄入批次信息的位置會放在“采購入庫單”模塊中。
萬里牛ERP采購入庫單維護批次信息
金蝶ERP采購入庫單維護批次信息
五、庫存場景下的批次管理
當(dāng)下游的WMS完成收貨并回傳到ERP或者是ERP的采購入庫單完成之后,對應(yīng)ERP的庫存就會增加,而相關(guān)的批次信息也會同步記錄在ERP的庫存模塊中。
萬里牛ERP的批次庫存
金蝶ERP的批次庫存
這里再補充一個關(guān)于ERP庫存變化的底層邏輯,這是很多供應(yīng)鏈產(chǎn)品經(jīng)理都會忽視的細(xì)節(jié),或者說對這些概念和邏輯模棱兩可,掌握的不夠透徹。
ERP采購訂單入庫的庫存變化說明
上圖中,當(dāng)倉庫完成了收貨上架,回傳數(shù)據(jù)給了ERP之后,方案一是讓采購訂單的狀態(tài)更新為“已收貨”,同時生成了一張“采購入庫單”,再通過這張采購入庫單來記錄庫存流水的變更,增加可用庫存,扣減在途庫存。
而方案二則是讓采購訂單的狀態(tài)更新為“已收貨”,直接用采購訂單的狀態(tài)變更來記錄庫存流水的變更,然后增加可用庫存,扣減在途庫存。
這兩種方案,一般來說都可以,但是方案一采用了采購訂單和采購入庫單解耦的方式,后續(xù)更有利于業(yè)務(wù)的拓展,推薦使用這種。
除此之外,我們會發(fā)現(xiàn)ERP的庫存變更都是通過“業(yè)務(wù)單據(jù)”來觸發(fā),可能是“業(yè)務(wù)單據(jù)+狀態(tài)”,即某些單據(jù)要達(dá)到某些狀態(tài)后,才會觸發(fā)庫存的變更;當(dāng)然也可能是“業(yè)務(wù)單據(jù)”,即只要生成了某些單據(jù)之后,就會觸發(fā)庫存的變更。
這里我想提醒大家關(guān)注的點是: ERP的庫存和WMS的庫存更新并不一定是同步的,因為各自的驅(qū)動邏輯和更新時機都不太一樣。即WMS更新了庫存,ERP不一定會更新庫存,反之也是一樣的。普遍采用的都是“業(yè)務(wù)單據(jù)”觸發(fā),如果WMS更新了庫存,想要讓ERP也更新庫存,那么一定要通過推送某些單據(jù)來觸發(fā),反之也是如此。
當(dāng)理解了這個概念之后,后續(xù)在設(shè)計ERP的盤點,其他出入庫,調(diào)撥等功能的時候,才能更好地理解,這些單據(jù)和倉庫WMS中的盤點,庫存調(diào)整單,調(diào)撥單等有什么差異,應(yīng)該要怎么聯(lián)動,怎么交互。
六、銷售場景下的批次管理
ERP創(chuàng)建好了銷售訂單之后,也是需要推送給下游的WMS去揀貨出庫,這個時候一般會有兩種典型的場景:
- 指定批次信息給WMS,讓倉庫按ERP指定的批次信息去出庫
- 不指定批次信息給WMS,讓倉庫按WMS配置的批次規(guī)則去出庫
針對第1種情況,比較常見的就是指定倉庫出某個效期狀態(tài)(臨期、過期)的商品,出某個外部批號的商品等。這種指定批次信息的方式,很強大,很精細(xì)化,但是需要WMS的配合,還要看倉庫的實際管理能力,所以如果有一些倉庫的管理水平不夠或者WMS的功能不夠強大,那么ERP是無法指定批次信息的。
具體的實現(xiàn)方式,可以參考我之前寫過的OMS指定批次信息出庫的原型,ERP層面的設(shè)計和這個是類似的,因為ERP的數(shù)據(jù)會推送到OMS,兩者要保證大體的數(shù)據(jù)結(jié)構(gòu)是一致的,才可以對接。
OMS創(chuàng)建出庫單頁面
針對第2種情況,那么ERP這邊就比較簡單,只需要指定“商品+數(shù)量”即可,具體要出什么批次的商品,完全交給了WMS去處理,最后只需要接收倉庫出庫之后回傳的批次信息即可。
銷售訂單示意圖
當(dāng)倉庫完成了銷售訂單的發(fā)貨出庫之后,可以通過回調(diào)接口,把WMS實際出庫的商品和相關(guān)的批次信息等回傳給ERP,所以ERP也要在和WMS接口對接時,把相關(guān)的字段對接上,后續(xù)也把相關(guān)的信息存儲起來。
奇門的發(fā)貨單確認(rèn)接口
對一些未對接下游三方WMS的ERP來說,不對接的原因可能是該ERP只是用來做賬使用,也可能是倉庫管理使用的是ERP自身的功能模塊。這類ERP在出庫的時候也需要根據(jù)批次規(guī)則來分配批次號和效期信息等,同時也要支持手動維護實際出庫的商品批次信息,這些信息的維護會放在“銷售出庫單”模塊中。
萬里牛ERP銷售出庫單維護批次信息
金蝶ERP銷售出庫單維護批次信息
七、ERP的批次庫存和WMS的批次庫存
經(jīng)過對ERP的的“商品,入庫、銷售、庫存”等模塊的拆解,我們可以很清晰地知道ERP的批次管理,其實和WMS是批次管理是密不可分的。雖然是在不同的系統(tǒng),由不同的用戶角色來使用,但是很多數(shù)據(jù)的交互和邏輯的處理,ERP和WMS都是同根同源,一脈相承的。
所以,我更推薦大家先學(xué)習(xí)和掌握WMS的批次管理,然后以此為根基,逐步去學(xué)習(xí)OMS的批次管理和ERP的批次管理。
在講“銷售場景下的批次管理”時,細(xì)心的朋友會發(fā)現(xiàn)一個問題,那就是無論我是指定批次信息還是不指定批次信息給WMS,都可能會出現(xiàn)一個很尷尬的問題:ERP的批次庫存和WMS的批次庫存對不上,怎么辦?
是的,ERP的批次庫存和WMS的批次庫存之間會存在差異,就好像OMS的批次庫存和WMS的批次庫存之間的差異一樣。需要注意:ERP實際上是直接和OMS進行交互的,這里用“WMS的批次庫存”其實是想表達(dá)倉庫批次庫存的意思,因為對上游的ERP來說,OMS和WMS都是屬于倉庫的系統(tǒng),這兩者的差異和區(qū)別等對ERP用戶來說不太關(guān)注。
在上一篇文章中,我講到了如果要解決OMS和WMS的批次庫存的差異,可以有兩種做法:
- OMS可以自己記錄兩層庫存(SKU庫存、SKU-批次庫存),那所有的庫存變更的場景都需要精細(xì)化到批次維度;
- OMS只記錄一層庫存(SKU庫存),涉及到批次庫存的時候可以直接從WMS層面去調(diào)用接口實時查詢;OMS的批次管理文章的部分片段截圖
由此可見,如果要解決ERP的批次庫存和WMS的批次庫存之間的差異,其實也是采用類似的方式:
- ERP自己記錄兩套庫存(SKU庫存,SKU-批次庫存),ERP和下游WMS的所有庫存變更場景都要精細(xì)化到批次庫存維度;
- ERP只記錄一層庫存(ERP庫存),涉及到批次庫存的時候再通過開放平臺的接口去實時查詢;
通過上述的場景簡單推演分析之后,會發(fā)現(xiàn)ERP的批次庫存要和WMS的批次庫存做到一致,同步等,其實難度非常大,耗時耗力,效益可能還不是很大。
所以,有很多系統(tǒng)會做一些妥協(xié)的方案,即ERP不去記錄這些WWMS層面的批次庫存,而是通過接口去查詢WMS的數(shù)據(jù)或者讓W(xué)MS定期提供這些報表。如果ERP需要用到一些庫存的批次去做成本核算或者是邏輯層面的溯源、定位等,那么就讓ERP自己做一套“邏輯層”的批次庫存管理,這個數(shù)據(jù)和WMS的實物并不能對得上,屬于“兩套賬”的玩法,感興趣的朋友可以自己推演一下相關(guān)的方案。
八、總結(jié)
關(guān)于批次管理方面的文章,我已經(jīng)陸續(xù)寫完了WMS的批次管理,OMS的批次管理,再加上這篇ERP的批次管理,基本上這個系列就要進入尾聲了。
輸出這些文章,不僅讓我自己對很多競品,對很多產(chǎn)品方案有了更深的了解,也讓我不斷地在更新、迭代我對批次管理的認(rèn)知。
批次管理雖然有一定的標(biāo)準(zhǔn)和通用做法,但是在不同的系統(tǒng)下,不同的業(yè)務(wù)場景下,不同的業(yè)務(wù)訴求下,還是會有很多衍生的玩法,這些可能是妥協(xié)后的方案,可能是因地制宜的方案,也可能是當(dāng)前階段最佳化的方案,希望大家可以靈活應(yīng)用這些文章中的知識,不斷提升自己的產(chǎn)品能力。
以下是輸出這篇文章的時候,我所查閱的一些參考資料,感興趣的記得都瀏覽一遍:
https://hupun.yuque.com/unzko7/oedgy7/mwi7c0nezzhggx1s#snjtO
https://vip.kingdee.com/questions/129339652304816805/answers/129339687906069018?productLineId=35&isKnowledge=2&lang=zh-CN
https://open.taobao.com/doc.htm?docId=106850&docType=1#ss8
專欄作家
我叫維他命(Vitamin),微信公眾號:PM維他命。前PHPer,做過在線教育類產(chǎn)品,也做過4年多的跨境倉儲物流方向的產(chǎn)品,目前是一位外貿(mào)SaaS領(lǐng)域的供應(yīng)鏈產(chǎn)品經(jīng)理。主要專注于WMS/OMS/TMS/BMS/ERP等領(lǐng)域,分享供應(yīng)鏈相關(guān)的產(chǎn)品知識。
本文原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)作者許可,禁止轉(zhuǎn)載。
題圖來自Unsplash,基于 CC0 協(xié)議。
該文觀點僅代表作者本人,人人都是產(chǎn)品經(jīng)理平臺僅提供信息存儲空間服務(wù)。
- 目前還沒評論,等你發(fā)揮!