本篇主要和大家聊一聊库存管理系统(IMS,inventory management system),以及什么是库存管理系统、它的作用是什么?希望今天的文章可以帮你找到答案。
IMS,库存管理系统,顾名思义是对库存管理。
在之前库内管理的文章中提到过仓库内部也有库存管理,主要针对的是库存的数量、位置、品质这三个维度。
而IMS则是架构在WMS之上对整体库存总量进行管控,主要针对的是量或者说是库存可用性的管控,并且作为库存中间管理者链接销售前台、上游ERP,统一管理整条链路中的库存变更确保上下游库存的准确性。
一、库存变更管理
下面我们就来看下在实际运营的售卖和出入库的过程中,IMS在系统间是如何进行管理的,按照触发方向可以分为2部分来看,正向:前台 → WMS触发和逆向:ERP/WMS → 前台触发。
1. 前台 → WMS触发
流程中订单取消指的是未发货的订单取消,通常已发货需要走售后流程
2. ERP/WMS → 前台触发
【注意:以上的同步以普通售卖为例,不考虑其他特殊策略下的库存增量同步,稍微会有一些差别。读者可以在读完全文后思考下对于不同的策略,在增量更新时会有什么差别】
从上面的两个流程中可以看出所有出库的创建都是基于IMS库存足够的前提,且所有与商品数量变更相关的单据的创建及执行结果都需要经过IMS的中转和分发才可以在流程下游系统进行库存变更的执行。
通常IMS中库存的扣减分为两步:预占,扣减;而库存增加则不需要预动作,是通过在途来标记,在到货后根据关联单据将在途库存扣减,同时根据到货数量增加实际库存。
单纯从流程上看,可能无法直接体现IMS的价值,那么我们来思考两个问题:
1. 如果没有进行库存预占会发生什么呢?
设想下,当前A商品在IMS中可用库存为10件,前台用户购买了2件,订单下发到WMS还没有发货,此时前台库存虽然已经被扣减了不会有超卖风险。
但是由于没有出库所以ERP中仍然有10件库存,此时采购人员在ERP中创建了10件商品的退供单(由于没有预占和IMS的校验单子可以创建成功),而仓库人员也将单据发货了。
这就导致用户实际购买的2件商品因为缺货而无法发货了。
逆向链路中库存预占的作用大家也可以自行思考下。
2. 如果没有在途库存的管控会有什么问题呢?
A仓库内已经有1000件X商品了,由于仓库运营变更需要从A仓库调拨到B仓库所以创建并让仓库执行了调拨单。
1000件商品从A仓出库了。
如果没有在途库存,那相当于这1000件商品在运输途中暂时“蒸发”了,如果采购人员不知道有调拨的情况,很可能认为商品售卖完了匆匆又去采购X商品了。
并且也很容易由于没有考虑未到仓商品的体积而导致仓库爆仓的情况(特别是在大促的时候),而人为去统计这些数据确实又是一件非常累人且意义不大的工作。
另外,IMS的中间件角色可以减少很多不必要的系统对接开发工作,形成标准的对接流程,对系统标准化也是十分有帮助的。
二、前台库存初始化
上面讨论的是前台已经有库存的情况下,售卖/关单或ERP发起的出入库对链路上下游中系统的库存影响及IMS的功能。
那么,前台库存最开始的数量是怎么来的呢?
首先,需要明确,前台在售的库存并不是也不能是单纯的仓库库存(WMS中的库存)的映射,而是经过策略处理的IMS库存
在这个过程中核心功能点在于策略的设置,简单的说,就是什么库存应该同步,什么库存不应该同步,这个策略在一定程度上和平台的营销/玩法有关。我们以几个比较常见的场景来介绍几种策略:
1. 普通售卖
最基础同步策略,同步IMS中未被占用的在仓良品可用库存即可。
2. 平台预售
通常是商品还未到仓,对于采购单上有预售标记的商品或预售模块设置了预售的商品可进行此类同步。这种情况下除了同步库存还需同步计划发货时间(货品的预计到货时间)。
题外话:这个方式有助于提升库存周转率,且降低了库存预测不准带来的高挤压风险。
3. 区域供货
如前台商品是指定区域供货,最常见的就是生鲜品类了。那么在同步库存时还需要根据可用库存的在仓仓库覆盖区域进行过滤,仅保留同步覆盖当前用户地址范围的仓库在IMS中的可用库存来进行同步。
4. 残次品特价
IMS中的库存是有库存状态的,最简单的管理是分为良品、不良品。但实际运营情况中会发现部分商品虽然有一定残缺(如外包装破损等)不能称之为良品,但是仍然是可以销售的,因此逐渐的我们对商品的状态进行了细化,对不良分成了不同的等级。
前台售卖时,如对商品状态进行特殊标记,IMS可根据标记只同步同类型库存。
5. 限量秒杀
初始化数量只能为设定的互动数量,当然前提是当前可用库存大于活动量。这种玩法有个比较特殊的点在于,活动开始后需要直接锁定IMS库存(订单下发之后不会进行二次锁定),避免在活动结束前ERP端的其他出库单的下发执行使可用于活动的商品不足造成超卖,只有活动结束后才可释放。
而除了限量秒杀之外,上面其他几种方式则是在用户下单成功、订单系统接收到订单后,才进行对应的IMS库存占用。
三、总结
通过上文的介绍,可以看出IMS主要扮演了“中转站”和“预留者”这两个角色。
上下游有库存相关的单据都需要先询问IMS库存是否足够,如果IMS回复库存足够才可以创建单据并进行下一步。
而IMS在告知上游足够并接收到创建成功的单据后,会“非常负责”的将库存“预留”(库存锁定)并将单据传给下游的执行方。
在收到执行结果后,对预留的库存进行实际的执行。前台库存的同步则是基于IMS本身的职能和特性结合运营要求而执行的数据同步。
此外,“中转站”的角色让IMS系统记录了所有入/出库单据,可以及时反映各种物资的仓储、流向情况,为生产管理和成本核算提供依据。