图片来源图虫:已授站长之家使用
作者:潘帕斯雄鹰,进击、踩坑中的产品狗一枚,关注互联网,写过小说,看过哲学。简书:潘帕斯雄鹰。
电商、O2O行业的产品线中,后端的业务支持系统占据了很大的比重,比如订单系统、供应链系统等。不同于纯线上的产品,电商、O2O领域的产品基本都是后端大于前端,这些后端产品覆盖了公司的核心数据,作为公司业务运行的基础。而且因为每个公司的业务形式不同,通常需要有一套自己的或者定制化的系统作为公司独特的业务支持。
供应链系统是为公司提供商品进销存业务的管理系统。大部分以交易为核心业务的公司,都有自己商品进货发货的供应链业务,而各个不同的行业和领域又有自己独特的供应链业务形态。供应链系统通常包含采购、库存管理、出入库、物流等多个模块,是公司后台产品线重要的一环。
作为一个后端产品的产品经理,日常工作的核心在于深入地挖掘业务,梳理流程,产出模块化的系统设计方案,和C端产品有着不小的差别。本文主要写我在公司设计供应链系统的实操记录,根据我所在公司的业务模式,介绍供应链系统整个设计过程的思路、方法和核心要点。由于供应链具体的业务和流程每个公司不一样,这类后台产品并不像C端产品那样能直接用来参考,因此本文不是一篇介绍供应链系统应有的流程和功能的文章,核心在于思路和方法的分享,功能细节仅供参考。
在上一篇描述采购模块的文章中,已介绍了公司的基本业务模式,可移步参考。
库存管理即对仓库中所有货品库存和出入库操作的管理。仓库库存是供应链的核心,所有供应链的业务都是围绕着库存进行。库存管理涉及到的业务模块很多,包含各项与库存变动有关的业务,采购、调拨、使用、退货、盘点、报损等。供应链系统的库存管理模块用于仓库基础设置和仓库库存的管理,对业务的价值为:
1. 系统账面库存和实体库存的一致性
库存一致性有两个阶段:
第一阶段是库存数量一致,即做到所有类型出入库业务的流程闭环,对出入库进行物、钱和人的管控。这点是基础的业务保障;
第二阶段是每个货品的唯一id识别和跟踪,一物一码体系的基础;
(2)不同角色之间业务流转的信息同步
各项出入库操作在各个角色质检的流转和信息同步,提高业务效率,如调拨业务中分仓、总仓、pmc等各角色的操作流转。这一点同样是基础;
(3)通过数据分析对库存进行智能计算和管控
实现基础流程后,通过数据分析,对仓库的库存数量和流动的智能计算以辅助决策,如安全库存设置,库存数量预警,根据订单自动计算要货数量等。如果说前面几条价值只是对业务的支持,那么这一点即是系统数据对业务的推动。
调拨是仓库日常业务最多的一种业务模式。广义上的调拨,指的是由某个仓库将货品调拨至另一仓库。
本文主要介绍调拨中的订货业务。订货是库存调拨中的核心,由各个地区的仓库在固定日期向总部申请库存,由总部的pmc统一进行审核,然后通过总仓发货,以及提交采购申请至采购后由供应商发货这两种形式满足各仓库的需求。
很多通用的电商供应链系统通常只是用调拨模块来支持这块业务,然而调拨只能支持库存的流动,没法涵盖整个业务流程。针对订货业务单独制作一个模块的作用在于:
业务流程和操作的支持,将分仓、总仓和采购三个角色,从申请、到审核、配货,再到发货和采购申请串起来;
库存数据的智能计算和辅助参考,包含各仓库理论申请量的计算,总仓对多个仓库配货量的分配策略,采购申请量的自动计算等。
1. 第一步,梳理流程,确定基本流程节点:
2. 第二步,确定参与业务的人员角色:
(1)申请仓库,通常是各地区分仓,发出订货申请,以及发货后进行收货;
(2)总仓pmc(或区域仓库pmc),协调各分仓的订货申请进行配货,并根据配货结果向采购发起采购申请
(3)总仓仓管(或区域仓库仓管),负责发货;
(4)采购,提交采购申请后由采购接收,接入采购流程。
3. 第三步,确定各流程节点的具体操作:
(1)申请
各地区仓库在固定日期提出订货申请;
(2)审核
由pmc对各仓库的申请进行审核。由于各个分仓人员的专业性不够强,因此专业人员的审核这一步必不可少。pmc归属于总部或者区域仓储中心;
(3)配货
将各个地区的申请单合并,由pmc将总仓(或者区域仓储)的库存,分配给各个申请的仓库;
这里会有三种情况:
总仓库存充足,这时全部满足即可;
总仓库存为0,这时需要将申请的数量全部转为采购申请;
还有一种是总仓库存只能满足一部分需求,这时需要按照一定的规则,将总仓的库存分配给各分仓,然后将剩余的订货申请缺口转为采购申请;
针对一个订货单,可以通过多次配货操作,进行多批次发货;
(4)转采购申请
配货完成后,根据配货结果生成待采购申请的库存数量,pmc将所有有缺口的申请单合并后,转化为采购申请单,然后由采购根据采购申请单进行采购操作,接上采购流程,在采购发货的环节,由供应商直接发给各个分仓;
(5)发货
配货完成后生成每个分仓的发货单,由仓管进行发货;
(6)收货
完成发货后,各分仓即可进行收货操作。收货包含两种:一种是针对总仓的发货单进行收货,一种是在采购流程中,针对供应商的直发进行收货。由于两类发货分属两个流程,因此收货时需要针对这两类收货单分别进行收货;
(8)完结
指整个订货申请单完结的判定。发货收货的环节结束,后续会有三种情况:
所有申请的货品都已发货,这时整个流程自动判定为完结;
由于仓库数量不够,有部分申请的货品没有满足,并且不需要再发货,可以手动完结申请单;
如果申请单未满足,但其他仓库有多余库存,可以交给该仓库进行发货,这种情况下,通过拆单操作由系统将部分订货拆出来,基于原单生成一个新的申请单,然后再走一遍流程。
字段梳理,整个流程中一共包含的字段为申请的仓库,审核发货的仓库,和货品的类型数量;
确定各个环节的单据,和它们之间的关联关系;
整个流程中包含三种单据:
(1)订货申请单,申请、审核和配货环节的单据;
(2)发货单,由配货操作产生,发货和收货环节的单据。由于一次申请可以分多批次发货,因此订货申请单和发货单之间是一对多的关系;
(3)采购申请单,由转采购申请操作产生,用于采购申请环节的单据。转采购申请是将多条配货结果合并为一条采购申请单,因此订货申请单和采购申请单之间是多对一关系,按照仓库进行合并;
在采购流程中,采购申请和采购单之间的关系是一对多,采购单又按照仓库分拆为采购子单,采购子单和采购发货单是一对多。将两个流程结合,可以将订货申请单和采购子单之间进行关联,两者之间的关系为一对多,区别的字段为采购子单中的供应商;由此得出订货申请单和采购发货单之间的关系为一对多。
各环节的数据操作方式,这一步是整个流程中的难点:
(1)申请和审核环节
比较简单,每个分仓一条申请单,以每类货品为一条记录;
(2)配货环节
业务场景为总仓将所有申请单汇总,然后根据每一类货品,对比各分仓的申请数量和总仓的库存数量进行配货,一类货品配货完成后开始下一类。配货是一个实时进行中的操作,而不是列表,操作的数据基础仍是订货申请单,可以把它理解为一个待配货的库存池。
在系统中,配货环节的操作需要两级结构,首先汇总当前所有待配货的申请单,然后统一按照货品类型拆分,作为第一级,接下来每个货品类型的详情中,再按照仓库拆分为第二级,嵌套各个仓库的申请量;
(3)发货环节
同样比较复杂。配货后,得出了各个分仓需要发货的数量。发货也是实时操作,可以看做待发货的仓库池。在发货时,先选择一个仓库,汇总所有待发货的库存进行发货操作,然后进行下一个仓库的发货。
在系统中,发货环节的操作同样是两级结构,和配货环节相反,第一级为各个仓库,在仓库中嵌套货品详情作为第二级;
(4)转采购申请环节
同样是实时操作,配货后,按照每个分仓形成待转采购申请的列表,操作时,选择分仓后进行合并即可。由于不需要关注货品详情,因此只需一级结构;
(5)收货环节
比较简单,直接针对发货单进行收货。
数量的展示、分配和计算规则,这一步同样很重要,承载了系统对业务标准的提高和效率的推进作用。
整个订货申请流程主要包含 3 个数量关系,订货申请量、配货量和采购申请量,三者之间的关系为:各仓库的订货申请量之和≥配货量+采购申请量,理想状态为两边相等;
数量的分配主要体现在申请/审核,和配货这两个环节:
(1)申请/审核
提供相关数据的展示,并计算建议申请量。展示的数据为申请仓库当前的库存量、在途库存量、近一周的消耗量,以及安全库存量,用于申请和审核时的协助参考;
建议申请量的计算规则为:|最近x天的消耗量-库存量-在途库存量|,其中x表示库存周转周期,根据库存类型进行判断。
(2)配货
提供相关数据的展示,并自动进行数量分配,完成分配后可以进行人工调整。展示的数据为每个货品当前库存量、配货后的库存量,用于配货实时的参考;
配货一共有前文提到的三种情况,其中库存充足和库存为 0 这两种情况,默认全部配货以及全部转采购申请即可;针对总仓库存只能满足部分申请的情况,需要自动计算配货量,规则为根据各个分仓申请数量的比例,乘以库存的比例,计算出每个分仓理想的配货数量,然后剩余未满足的申请数量,转为采购申请数量。
最后一步,界面和操作的设计,和原型的产出:
状态需要参考当前所处环节和数量变动情况这两个情况,给出用户需要了解的动态描述。整个流程很复杂,配货、发货、收货这几个节点都会同时进行,因此状态的设置需要考虑到各种情况。流程找那个包含申请的分仓和配货发货的总仓两个角色,经过思考后,设置了两个状态,一个面向分仓,一个面向总仓。具体页面的状态如下:
(1)分仓
待审核;
待发货,即完成了至少一种货品的配货操作,可以开始发货;
待收货,即完成了至少一种货品的发货操作,分仓可以开始进行收货;
部分收货,即完成了至少一种货品的收货操作,但没有收完,需要继续收货;
全部收货,即流程结束;
(2)总仓
待审核;
待配货,即已审核完,可以开始配货;
部分配货,即完成了至少一种货品的配货操作,但需要继续配货;
待发货,即全部配货完成,可开始发货;
部分发货,即完成了至少一种货品的发货操作,分仓可以开始进行收货;
全部发货,即所有订货都以发货或者转采购申请。
核心操作为配货、发货和转采购申请三项,前文已经详细介绍过。其他的操作为审核、取消、重新配货、完结,对应到每个页面的每个状态节点中即可,细节不再展开。
最后附上部分页面和操作的原型图: