ERP系统中许多地方存在编码的需要,如物料、发票、订单、凭证、科目、客户、供应商等等。说起来编码不是一件大事,要求很简单,分配唯一的标识而已。但又不是一件小事,还真有不少企业搞不清楚怎样编码,尤其是物料的编码。现在使用ERP系统的公司到底是怎么进行编码的呢?这可是许多人关心的问题,在网上的论坛中就有专门讨论编码的议题,发言很多,不过也还是免不了论坛这种形式固有的局限:没有什么定论的东西。想吸取点经验的读者费神看了半天,恐怕还是不知道应该怎么办。我也替这些读者着急,就动笔写下一点东西。 先总结一下论坛中的发言,大抵是说国际著名公司的物料编码方案是厚厚一本书,规定的十分详细严密,国内的许多公司则是草草了事,不堪推敲,留下了许多缺陷,事后再想进行修改难上加难,所以进行编码要谨慎啊!说得不错,但是我不以为然。物料编码不是一件难事,不应该是一件难事。如同百米跨栏,ERP实施过程中有许多地方需要跨越,物料编码不过是起始的一个而已,不要把它想象成攀登一座雪峰,它不比实施过程中遇到的其他事情更难。 物料编码应该分成两个部分:一是代码含义的规则,二是代码分配的规则。我认为代码含义应该遵循简单的原则,代码分配应该遵循统一的原则。 代码含义简单就是说仅通过代码不需要表示出多少信息。从ERP系统技术角度来看,用流水号表示物料代码是可以的,系统只要求代码的唯一性,并不要求有什么含义。有的教科书也是这样认为的,如天津大学出版社-MRP II/ERP原理与实施一书中就指出“物料编码应遵循以下原则:每项物料均应有唯一的物料代码;要简明,不要太长;没有含义,只是标识符而不是描述符”。现实中采用无含义流水号的企业并不多,因为一点含义没有很多人是不习惯的,从存在就是合理的角度讲,有一些含义未尝不可。但是我的建议,或者说结论是:含义不应该超过三级。 有一个具体的例子,某机加工企业其物料编码部分规则如下表:
根据这个规则可以看出,物料代码前三位根据性质分了三级,由粗到细,三位之后,再加若干位流水号即可。我认为这样代码含义的规则已经是极限了,不要考虑更复杂或详细的规则了,有这样三级足够了,能少一些,只有两级或一级更好。为什么我这样认为呢? 很多人总是说企业的物料很多,少则数以千计,多则数以万计,其中种类繁杂,你就建议两三个级别,够吗?我说:够的。物料很多,种类很多,但是关键在于从哪些角度进行区分。有几种典型的要求列给大家看看是不是应该在代码含义中考虑。
1. 物料是采购的、自己加工的、还是外协加工的?
2. 物料是进口的还是国产的?
3. 物料入库是否需要检验?
看起来物料代码中反映这些含义是合理的,至少下订单时不容易出错吧,不会把采购件下到生产订单中,不会把国产件出现在国外供应商订单中,入库时一看编号即知不会漏检。看上去是有道理,细细推敲就不一定了。这几种含义在物料属性中都有,放在物料代码中不合适,因为物料代码一般是不可以改变的,而这些含义都是可能改变的,所以代码中包括的含义应该是一些不会变的属性。 为什么代码中含义不要多过三个呢?看一个其他领域关于编码的例子,会有一些借鉴意义。每个人都有身份证编号,我女儿刚出生,报户口时就分配了一个号,一生不变了。这个编号里面有几层含义呢?具体内部有几层,我不知道,从报纸公开的说明来看,有三个主要层次。前六位表示申请身份证编号的地区,中间八位是生日(年月日),最后有四位,其中倒数第二位表示性别,男单女双,最后一位是校验码。写这篇文章前,我就在琢磨,中国这么大,人口这么多,身份证编码就这么三层意思,不容易啊!要让某些研究物料编码的人来定义,恐怕民族、籍贯、血型等等都要考虑进去了吧?警察同志在犯罪现场检验出嫌疑人血型,不用如电视剧里那么费劲想办法确认,只要把身份证号一列,就知道谁最可疑,多合理的要求啊,怎么没考虑呢?后来想想不考虑是有道理的。申请编号时怎么证明提供的血型是正确的呢?医院验血,经常报道说搞错了,可是作为编号一确定再修改可难了,只听说有人改名字,没听说有人改身份证号。所以身份证编号含义规则很合理。公司的物料能有多少,再多不过几十万,有几个公司的物料能有上百万?与十四亿人口比,太少了。 有人总认为含义少不好,其实含义多了没用,没人能够一看号码就能识别出属性。火车站查身份证的警察问:“在哪里出生?”答:“河南开封”。问:“血型是什么?”答:“B型”。警察一笑,“跟我走一趟,你的身份证编号说明你出生在河南洛阳,血型是O型”。现实中是这样查的吗?物料代码32300005是什么意思,对照刚才的那张表,是某种耐油橡胶板。读者自测一下,有几个能
记住三层含义,能记住第一个“3”是非金属就不错了。不能要求工人每人口袋里装着编码规则的小本子,时不时打开查一查。工人是靠眼睛看实物,看描述再结合代码来识别物料的,只看代码没用的,代码含义多也是没用的。 总结,代码含义应该遵循简单的原则,代码分配应该遵循统一的原则。ERP系统中有许多管理物料属性的字段,要充分利用,不要在代码中包含超过三种含义。 最后有一个潜在难题,以后可能会碰到,留给读者一起考虑怎么办。这个问题与物料代码无关,还是关于身份证的。倒数第二位表示性别,男单女双。可是现在社会新鲜事多,先不说先天性别难辨的,有些人出生就是阴阳人,怎么办?还有越来越多的变性的例子,身份证编号岂不是暴露了这些人的隐私。会不会有人闹着要改编号呢?我们拭目以待。 |