数据中心 频道

掌控BOM 玩转ERP数据中心

《阿峰实战ERP系列》更多文章,请浏览《阿峰专栏》
 
  【IT168 专稿】BOMBill of Material)——物料清单,是ERP系统的核心基础数据。其构成的产品物料清单,是公司计划、采购、生产、成本核算及技术管理的重要基础数据。物料清单是否准确、是否及时齐全,直接影响到ERP的应用效果。
 
  今天是阿峰为沃奇公司配置BOM的日子,几天前信息部丁经理就已经为BOM配置提出了要求:
 
  ①沃奇公司的大部分生产流程都需要用到虚拟的物料,它们虽然不真正存在,但却是生产过程所必需的,ERPBOM配置需要对此加以考虑;
 
  ②沃奇公司大部分物料都确定了损耗率,在做物料需求计划或计算成本时,BOM也需要对损耗率适当考虑;
 
  ③沃奇公司的包装材料经常用分数来表示,ERP系统需要对此加以支持;
 
  ④沃奇公司有些材料是批次采购,而不是按生产计划或销售定单来采购,因此BOM配置需要支持分批次采购;
 
  ⑤实际生产过程中有些物料不是实际的物料,而是服务,BOM需要对实际物料与服务进行区别对待。
 
  尽管丁经理提出很多要求,但阿峰仍然很高兴,看来沃奇公司已经把生产流程研究透了,BOM的配置应该不难理解,剩下的问题就看阿峰的了。结合沃奇公司的要求,阿峰首先从虚拟件开始讲起。
 
虚拟件玩转BOM虚拟物料
 
  在传统的物料配置中,如果有一个组套产品,SKU编码为DT0484,它有一个扳手、20个尺寸各异的套筒、5个公批头和5个英制批头组成。按传统的BOM,则产品的结构为:
 
 
  按照这种编制,尽管一目了然,但维护起来却相当麻烦。假设1#套筒 - 20#套筒在10个产品中都要用到,那么在这十个产品的BOM里都要包含这20个套筒的信息。若发生意外的情况,客户要求套筒有原来的20个减为用11#套筒 – 20#套筒,或者不要英制批头,只要公制批头。要一个个的修改BOM,即耗时,又容易出错,要维护这十个BOM,工作量可想而知。
 
  因此在ERP系统中,引入了虚拟件的概念,很好地解决了这个问题。虚拟件,顾名思义是一种虚拟的物料,它在产品结构中并不存在,甚至根本不存在于物料库存中,但却出现在制造过程中,是一种为生产控制服务的物料。
 
  按照虚拟件的概念,我们可以把1#套筒-20#套筒设置一个虚拟件,叫做套筒组;把5个公制批头设置一个虚拟件,叫做“公制批头组”,把5个英制批头组设置成为“英制批头组”,再把“公制批头组”和“英制批头组”设置为一个“虚拟件批头组”。按照这种设置,以上产品的BOM结构即为:
 
 
  可见,如果客户只需要公制批头,那么我们不用再像传统BOM一样到每个产品的BOM里去修改,只需把“虚拟件批头组”下面的公制批头删除就可以了。或者如果出来一个新规格的批头——公制6#批头,那我们也不用到每个BOM里去修改,而直接在“公制批头组:下面,把公制6#批头加进去即可。
 
  “那虚拟件岂不是和半成品将成品库分级一样,将BOM由一个变为多阶BOM?”ERP项目经理提出了自己的疑问。
 
  阿峰,微微一笑!历史是何等的相似,以前的客户也曾提出同样的问题。但那时阿峰还为此手足无措,而此时的阿峰则早已经成为ERP的老手。
 
  其实,虚拟件跟半成品有本质区别的,主要体现在物料需求的计算、领料的区别和成本的计算上。
 
  以上面这个DT0484为例。假设现在要生产1000套DT0484产品,跑MRP需求的时候,最终出来的物料是扳手,1#套筒-20#套筒,1#公制批头-5#公制批头,1#英制批头-5#英制批头。也就是说,ERP系统在跑MRP需求的时候,若发现有虚拟件,则会考虑虚拟件下面的物料,而不会考虑虚拟件的需求量。
 
  但若把以上的套筒组设置为半成品,则默认出来的是扳手,套筒组,1#公制批头-5#公制批头,1#英制批头-5#英制批头。这就不符合我们实际的需求。可见虚拟件并不同于半成品。
损耗率减少ERP运算结果的二次修改
 
  在制造行业的生产过程中,损耗在所难免,每个生产流程都会产生一定的损耗率,如何正确预算、核算损耗率,也成为BOM配置的一项重要工作。
 
  损耗率=BOM净用-BOM标准用量)/BOM净用量
 
  虽然每个ERP产品中损耗率的叫法可能有所不同,但实质是相同的。设置损耗率的目的是为了在计算物料需求和标准成本时,能够更加切合生产实际。
 
  如以上的DT0484产品,假设一个DT0484产品需要一个扳手,若我们在BOM里设置扳手的损耗率为5%,则在跑物料需求的时候,如不考虑其他因素,则1000个DT0484产品,通过MRP运算,认为需要扳手的数量为1000/(1-5%)=1053个。
 
  在计算DT0484的单位标准成本的时候,也不会一个扳手的价格来计算,而是以1.053个扳手的价格来计算DT0484的单位成本。
 
  有了损耗率,能使ERP系统运算的结果更加符合实际情况,能够大大减少对ERP运算结果的二次修改。
 
不参与运算也要纳入BOM的过滤选项
 
  在实际工作中,常常遇到这样的情况,在购买某些不容易分割的物料时,无法根据MRP运算的准确结果去购买,而是整批整批地买。
 
  面对这种情况,则需要在ERP中,设置“过滤”选项,即将那些不能按需购买只能批量购买的物料过滤掉,在MRP运算时不予考虑,而在运算完毕后,再结合安全库存、补货点等设置做批量购买。过滤选项在不同的ERP中可能会有不同的叫法,比如有些ERP产品叫做“过滤”选项,而有些产品则叫做“不运行MRP运算”。
 
  但是,尽管过滤掉的物料并不参加运算,但还是要将其纳入BOM。这主要是考虑到计算标准成本的需要。若不把该项目列入BOM中,以后计算标准成本的时候,就会少一项成本,从而造成成本计算错误。
 
  像沃奇公司的一种产品泡盒,要用到PVC料。然而PVC料不是说你要多少,供应商就给你多少。供应商一般都会有最小采购量的限制,如要一吨起卖等。而从公司角度来考虑,PVC料在很多泡盒中都要用到,没必要到用的时候再去购买,从成本等因素考虑,可以一次买10吨放在仓库里。遇到这种情况,我们就可以设置PVC料不做MRP运算,而结合安全库存、补货点等设置,做批量采购。
结构批量解BOM分数难题
 
  沃奇公司生产的产品DT0484,要用到一种PVC料,一套产品用到的量是0.002千克,这时,输入的时候要输入0.002。在输入过程中,很可能漏输了一个0,变成0.02。这种失误,是可大可小的。若这种PVC料便宜,那多了也没什么,但是,若这种PVC料非常贵,或者生产次类产品特别多,那误差就会非常大,光PVC料的成本就扩大了10倍。
 
  为了解决这种问题,在ERP系统中引入了结构批量的概念。在上述情况中,我们可以把结构批量设置为1000,那么在BOM用量里,就可以输入2,而不用输入0.002。在计算物料需求时,会自动转换,变为2/1000=0.002。其实,有些ERP系统中,强行应用结构批量的,只是默认的是时候,结构批量为1,察觉不出来而已。
 
  结构批量的另外一大应用就是在包装材料上。假设,我们要生产1200套DT0484产品,其中,3套产品用一个外包装箱,即一套产品用到0.333个外包装箱子。
 
  若没有结构批量的话,那在BOM里就要设置外包装箱用量0.333个。那么1200套DT0484产品,在进行MRP(物料需求计划)计算的时候,显示需要外包装箱数为1200*0.333=399.6个。在物料请购单上,还要人工的去修改,改为400个。
 
  而如果应用结构批量的话,结果就大不相同了。我们可以在包装材料的结构批量里设置为3,在BOM用量里填为1。通过系统自动运算,一套产品的包装箱标准用量为1/3=0.333个。在跑MRP运算时,跑出来的结果为(1200/3)×1=400套。
 
  也就是说,在跑MRP运算的时候,系统把运算顺序做了调换,传统模式下,运算公式是:产品数量*(BOM用量 / 结构用量);而在ERP系统运算的时候,变为了(产品数量/结构用量)* BOM用量。显然后一种采用了结构批量的运算很好的解决了包装箱用料分数的难题,减少了许多人工修改运算结果的重复工作。
 
服务也是BOM物料
 
  BOM里的物料不全部是采购件或者半成品,还有一种非物质的东西——服务。同样是生产过程中不过或缺的因素。为了事前做好“服务”的安排,也需要将服务这种特殊的物料纳入BOM中来。
 
  然而,若将服务列入BOM中,又如何入库验收和计算库存金额呢?把非物质的特殊物料——服务与采购件等实物同等对待,显然不可取。其BOM控制流程如下:
 
  (1)在运行MRP的时候,将服务与其它物料一样,生成“物料请购单”(物料需求单);
 
  (2)在由“请购单”生成采购单的时候,不需要生成采购单,而只需要生成一张服务需求单,让相关部门去安排人员。没有采购单,系统也就不用入库,库存金额也不会增加。因此,在计算库存金额时,实际上是没有包括服务金额的;
 
  (3)然而,“服务需求单”也相当于一张采购单,该单据有两个控制状态,一是已安排,表示已经安排人员;二是服务完工,表示服务已经完成。只要当单据状态为“服务完工”时,财务部门才能根据这张单据做结帐动作;
 
  (4)在计算成本的时候,服务与其它普通物料做同等处理,一并计入生产成本。
0
相关文章