有个本土供应商,是典型的销售提需求——销售兼职需求计划。几十个销售预测未来三个月的需求,每个月更新一次,按照客户汇总,上传到ERP系统,驱动后端的供应链来执行。我们去给这个公司培训,负责公司最大客户的销售经理说,让帮忙看看这个客户的备货计划。当天培训结束后,我们就坐下来谈。原来想,他和他的团队应该问需求预测、安全库存方面的问题——这是供应链的前两道防线,也是计划工作中最核心的两块。谁知道打开Excel表格后,所有的问题都归结到执行操作上,在信息化水平高的公司由 ERP做的那些事。
这位销售经理的客户采购大致几百成千个料号,有好几个工厂,料号跟工厂的组合就有几千个。他的销售团队用Excel表格在每个工厂、每个料号层面做3个月预测,然后把这些数字整合到料号层面,工作量确实不小。然而麻烦的还在后面:逾期需求的处理。逾期需求就是预测偏高,但销售认为需求只是暂时偏低,后续需求会拔高,所以不愿把多余的需求预测删掉。比如6月份预测了100个,实际需求80个,这多余的20个预测还没有被消耗掉,变成逾期需求,是继续挂在那里驱动供应,还是该砍掉?要挂的话该挂多久,要砍的话砍多少?
每个月,销售从ERP系统里拉出逾期需求,把那成千行逐行看过去,全部都是手工,哪些要保留,保留多少;哪些要砍掉,砍掉多少,这帐可不好算,工作量更是惊人。对于销售来说,他们最关注的是短缺;逾期需求是过剩,工作量又那么大,一忙就忘了。结果是ERP系统里,有的需求都逾期半年了,还挂在那里,驱动的库存以千百万元计。
那么,信息系统ERP究竟是怎么做这些事儿的?且听我们细细道来。
在ERP里,比如SAP,需求预测会按照日期录入,比如未来13周(一个季度),每周100个,连续录入ERP。ERP里的物料需求计划(MRP)就开始运转,产生毛需求,减掉在库库存、在途库存,就得到净需求。根据净需求量,ERP系统自动生成申请单,然后根据系统设置,一旦进入生产、采购的提前期,要么由ERP自动,要么由采购、物控等手工转换成生产、采购订单,驱动供应链来执行。
那需求预测过高、过低怎么办?功能健全的ERP有办法自动处理。假定6月份的预测是100个,实际需求是80个,这20个的过剩预测ERP可以替你保留。保留多久的期限可以设定,一旦超过保留期限,系统就自动删除过剩需求预测,同时提醒供应链来取消相应的供应。如果ERP跟电子商务系统对接的话,这些信息会转到电子商务,由电子商务直接传递给供应商。如果供应已经取消不掉了,那也让供应商停止进一步加工,以后即便要报废,也报废半成品,这样把企业的损失控制到最低——信息系统会清楚地记录指令是什么时候给供应商的,以判定供应商是否按照指令行事。
那如果预测过低呢,比如预测100,实际需求是130,这多出的30个又该怎么办?功能健全的ERP也可自动处理:如果以前有逾期需求预测,那就先消耗逾期需求,否则就提前消费未来一段时间的预测(这叫“向前消耗”,系统可以设置,比如说未来3个星期)——这是告诉ERP,我们的需求只是提前了,但总需求没变,ERP会发出催货信号,让供应商提前送货。如果未来这一时段的预测还不够,那多余部分就形成多余需求,驱动ERP产生更多的订单,这对供应链来说就是紧急需求。
这有点抽象,举个例子。假定需求预测是10个/周,以前还有8个的逾期需求(预测过高,实际需求过低造成),现在突然来了个60个的大订单,而且就要货,ERP系统会这么对付:先消耗过去的8个逾期需求,剩余52个;这52个消耗了本周和未来3周的预测,就余下12个——ERP说,你不能继续消耗未来的预测(假定向前消耗定义为3周),那这12个就成为多余的紧急需求,ERP会产生请购申请,驱动供应链来多生产12个。对于供应链来说,从ERP传递来的信号是这样的:赶快把未来3周预测的10个/周送来,现在就要;再额外提供12个,这是比原来预测多的部分,也是现在就要。
上面这套逻辑就是ERP里的向后消耗(Backward Consumption)、向前消耗(Forward Consumption),是动态匹配实际需求与需求预测,合理驱动供应的关键逻辑:预测一般是经过平均后传递给供应链,好帮助供应链平滑产能;但实际需求时高时低,与预测不会一一匹配,部分原因是需求端的正常变动(提前或推后到,但总量与预测一致),部分原因是预测失败(过多或者过少)。这套逻辑把一定范围内的不匹配,比如不超过3个星期的量,作为“正常变动”处理;超出部分就按照预测失败来对待,及时提醒供应链来应对,比如取消逾期需求(其实是降低预测),或者产生额外的需求信号以获取更多供应(其实是增加预测)。
看到这里,大多数人注定是云里雾里。原因很简单:他们公司的ERP没有这些功能,或者有但没有用。这套逻辑很强大,也很复杂,专业的计划人员也往往搞不懂,那些兼职做计划的销售就更不用说了:面对成千上万的料号,手工要把这些用Excel算清楚,可不是件容易的事,算错的概率有多高就可想而知。结果呢,都是白花花的银子——算多了是库存积压,算少了是营收损失,都是钱;一旦算少,造成短缺,解决方案一般是更保守,多压库存,最终以过剩结束,还是钱。
说完了需求预测,让我们再来看安全库存。
在ERP里,安全库存是需求的一类,而且是马上就要供应链来满足,以备不测,因为需求和供应的不确定性随时都可能发生。所以,一旦安全库存被消耗,MRP运转后,会提出相应的需求,并提醒供应链马上响应满足。在上面这个本土企业中,安全库存也由销售人员设置,而且同样是设置在Excel表格中,比如设1个月的需求,在实施上只是驱动1个月的多余供应。销售每个月在做计划时,就花很多时间在算,上个月的安全库存是否用完了,这个月预测下降了,安全库存也调低,给供应商的订单得调整多少。成千个料号,这帐就很难算清,复杂度可想而知。为了安全,那就宁多勿缺,多放库存得了。
理论上,安全库存是随用随订。在信息化程度高的企业,ERP可以每天监控库存变化,及时提出补货申请。在信息化程度低的企业,比如这里的案例企业,人工补货,每个月订一次安全库存的料。也就是说,从安全库存用掉,到订货,平均延误是2个星期[1]。这是个很大的时效性问题。这意味着虽说是1个月的安全库存,其实功效只相当于2周的。如果你真的需要1个月的量作为安全库存,那就得放更多的安全库存来应对。这么复杂的帐,销售当然搞不清,但凭经验知道得多放;多放多少,他们自然算不清,那就保守点,宁多勿缺,最后还是牺牲库存。
你看,安全库存和需求预测的调整放在一起,来回折腾,案例公司的销售就花了无穷无尽的时间来应对。于是,培训结束后的讨论中,就出现了“可怜夜半虚前席,不问苍生问鬼神”[2]的事儿来——“苍生”是需求预测和库存计划,供应链的第一、第二道防线;“鬼神”是执行层面的事,供应链的第三道防线。不是“苍生”不重要,而是“鬼神”制造的麻烦更多:销售的大多时间都花在做ERP的活上了,折腾最多的也是那一张张的Excel表格,你让他们不谈补货谈什么?销售整天忙着补货,需求预测和库存计划还有时间做好吗?销售做计划,错误的人在做错误的事;人工做ERP的活儿,错误的人以错误的方式做错误的事。你知道,最后都是以库存为代价。
在信息化水平低,手工做计划、手工补货的企业,从需求产生,到需求信号(比如订单)传递给供应链,动辄就是1周到1个月的延迟(比如每周或每月订货)。这意味着补货周期增加了相应的时间,也增加了相应周数的周转库存。
就拿案例中的这个企业来说,假定每年的销货成本为12亿元,这意味着1周的库存就是2300万元左右(12亿除以52周)。假定该企业的库存成本为20%,那么多放1周的库存意味着每年460万元的成本。这是真正的成本,因为库存积压资金,需要支付银行贷款利息;库存放着就折损,特别是超过一定期限的折损风险就更高——这个企业的仓库里就有千百万的呆滞库存找不着出路。假定这个企业年营收为十几亿,460万元意味着把净利润降低0.3个百分点左右。这对只有几个点净利润的大多行业来说,可不是个小数字。
这只是需求预测和安全库存,严格地说,还没有谈到真正的执行,比如供应商的订单管理。没有电子商务,采购订单操作依赖人工处理,效率低,透明度差,信息不及时,不准确,增加了运营层面的不确定性,整个运营层面就不得不投入更多的人力来管理,造成运营成本高昂。
具体来说,在很多企业,采购订单手工生成,要么Email,要么传真给供应商,没有电子商务,每天成百成千的订单,可以想象需要多少人力资源,所以绝大多数的公司是没有确认供应商的交付日期。即便是一次性确认了,需求日期一变,MRP重新运行,就需要重新确认供应日期,没有电子商务的支持,我们还没有见到一个公司能够人工一遍又一遍地确认供应商交期。结果呢,需求是确定的,比如客户的订单有明确的需求日期;但供应是未知的,口子是开的。对销售而言,客户订单接进来后,整个供应链就如黑洞,充满了不确定性,除了祈祷,就不得不花更多的精力来管理。
在我们的公司调研中,销售对供应链的一大期望是透明度、可视化,以增加交付的可预见性。比如客户的订单接进来,不知履行到哪一步了,也不知道原来承诺的交货日期是否可靠,直到过了交货日期,客户打电话投诉,才知道迟到了,但已经来不及了。新的交货日期是什么,尽管得到供应链的承诺,还是面临同样的问题。一个根本原因呢,就是信息化水平低,没法在订单层面有效集成供应链的各个环节。
在2017年的新年致辞中,华为轮值CEO徐直军说,“经过多年的努力,(华为)交付流程基本贯通”[3]。而这交付流程中,一项重要任务就是通过信息系统,集成订单交付流程的各个环节,增加交付的可预见性——光靠人是不可能集成的。看得出,信息化是一项多么艰巨的任务。