文/明道云实施顾问 周亮
为什么要实现库存的先进先出?
化解成本压力:自 2002 年开始,中国工业多种原材料的价格和工资加速上涨,而产品价格增幅显著低于原材料价格增幅,这也就代表了企业必须通过加强自身的管理水平从而降低成本压力。除了通过管理原料成本、人工成本、生产成本、运输成本来控制成本消耗以外,库存管理也是降低消耗的核心元素。
先进先出是降低库存消耗的一种非常重要的手段:有持续的流转成品可以大幅度降低库存的积压,避免爆仓,减少库存的在库周期。除此之外,人力成本、物流成本等等都会相应减少,实物与帐面一致,财务的成本也能够按实核算,及时发现库存消耗问题并采取措施,造福于企业。
那么自动先进先出的概念是什么?
自动先进先出也就是先产出或者购入的成品库存最先出库。在这种方法下,每次生产或者购入存货时,应按时间的先后顺序逐笔登记其数量、货区、单价和金额。发货时按照库存入库的时间先后顺序依次自动出库。
要想实现先进先出的流程,现场的仓库管理水平也需要跟上,否则货物不归类,存货摆放位置不清晰,一样难以将效果运用最佳。
应用场景是什么?
有一家外贸公司,市场部接到一个数量是 10w 的单笔订单。采购部分批采购,成品也是分批到货,这时候我们就可以按照 PO(采购单逐条登记数量和单价,库区办理入库),形成同一个 PI 但是不同 PO 的库存记录。
于是市场部下达了销售订单发货指令,要求之前的 10w 订单第一次配送货 7W,余下 3W 待定。仓库接收到市场部的发货指令后开始进行配货,此时货物在仓库的各个角落。
那么首先需要在系统里面将配货单打印出来交给配货员,此时的配货单根据出库的先进先出原理,自动标记不同的存货记录应发数量为多少,分别在哪些库区。
配货员根据打印的发货单(计划单、装车单、派货单),通过上面的库存情况可以精准快速的找到货物并完成发货。
仓管员打印送货单时系统根据发货单的库存情况实现自动出库,无需人工操作,同时库存也会相应减少。
因此现场和系统配合运作,才可以将先进先出法发挥的淋漓尽致。
如何通过明道云实现先进先出方法论?
首先要想实现这种方法论那么需要分解为搭建三部曲。
一部曲,设置独立的表单,分别是:
产品档案表,主要设置产品的基础字段,比如产品编码、产品名称、单位。
入库明细表,主要由产品档案、入库日期、入库量、库区、入库单价、入库金额等字段组成。
库存明细表,主要由产品档案、入库日期、库存量、库区、库存单价、库存金额字段组成(和入库的记录信息相识,同时也是一对一的关系)。
库存出库表,主要由产品档案、出库日期、出库数量字段组成。
发货单(是发货明细的表头),字段主要由发货日期、发货员、发货状态组成。
发货明细表,字段由产品档案、发货日期、应发数量、实际出库量、剩余出库量、库存情况组成。
二部曲:关联表单
根据实际运用场景绘制出关联表单映像,既然涉及仓库管理就必须有产品资料,所以入库明细表关联产品档案表,库存明细表关联产品档案表,库存出库表关联产品档案表,发货明细表关联产品档案表。
根据入库、库存、出库的流转,那么我们可以联想到入库明细表关联库存明细表,库存明细表关联出库明细表。根据发货计划的结构可以映射出发货单关联发货明细表,发货明细表关联出库明细表。
还有没有其他的关联表单呢?在这里不一一举例,设计的场景越多那么关联表单也就会越多,复杂程度越高。
三部曲:工作流设定,也就是说将所有的关联表单进行数据的流转设计
如入库记录增加库存记录同步新增,出库记录新增库存记录中库存量相应减少。在这里着重描述自动出库并且先进先出的工作流搭建,首先我们得设想一个场景:就是一般情况下操作员会在通过点击按钮来实现全部出库,按钮是需要在总单上实现的,所以发货单上需要创建一个确认出库按钮。
在按钮里搭建这样的工作流:
首先通过发货单批量查询关联表发货明细,然后将批量获取出来的发货明细创建子流程,并且并行。
进入【查询库存】按入库时间先后排序的子流程设计界面,这时候的触发条件是发货计划明细表,批量获取产品档案所关联的库存(注意条件,库存量必须大于 0,同时排序规则是入库日期最旧的在前)然后继续将批量获取出来的库存量生成子表。
进入【查询库存】先进先出逐条递减的子流程设计界面,这时候触发条件是库存明细表,所以还要查找出上一个子表的表单(发货计划明细表)。
首先我们得搞清楚一个原理:发货计划明细表中的实际出库量是一个变量,在还没有出完库的时候会【递增】库存量,发货计划明细表中的剩余出库量是一个公式字段(计划发货量-实际出库量),当剩余出库量为零时就意味着货物已经出完,结束出库。
通过发货计划明细表中的剩余出库量和库存明细表中的库存量对比两种分支出库,第一种分支就是库存量小于等于剩余出库量时,因为不足够出完,所以更新发货计划中的实际出库量【递增】库存量,然后新增出库明细表,最后更新库存量【递减】库存量。
第二种分支就是库存量大于剩余出库量,因为足够出完,所以更新发货计划中的实际出库量【递增】剩余出库量,然后新增出库明细表,最后更新库存量【递减】剩余出库量,余下未出库存量。先后顺序一定要注意库存最后更新结果。
其实先进先出法只是明道云搭建的所有场景中的冰山一角。很多同行会问我们零代码应用平台,到底可以做到什么复杂程度?也有人认为零代码只能做一些简单小应用,无法代替传统型 ERP 这种复杂性应用。答案绝对是否定的,实际上零代码平台同样可以用来解决复杂问题,它只是通过不同的路径,将复杂的场景逐一拆解为简单的环节。
以上的分享可能对于初学者有些难度,但是目的不是为了为难大家,而是证明零代码的魅力。只要肯钻研,零代码的魅力就会为你绽放。