ehxz 发表于 2011-5-3 18:27:08

ERP系统中计量单位的设计和使用

本文主要对ERP系统中计量单位的使用需求及重要影响进行分析,设计计量单位的数据结构及系统实现方式。从计量单位的概念模型分析入手,深入分析ERP系统中计量单位的逻辑数据结构和应用实现,提出了一个简明的设计实现结构,并且设计了对快速实施的支持方案。

1 引言

    按照Gartner的定义,ERP是指建立在信息技术基础上,以系统化的管理思想,为企业决策层及员工提供决策运行手段的管理平台。目前,ERP系统在企业中的应用越来越广泛,作为业务运行的管理平台,ERP系统的数据准确性和一致性是至关重要的。

    ERP的应用实施,涉及到企业的方方面面,其复杂性是不言而喻的。如果没有相对完整、准确、一致的运行数据,就无法反映企业的业务运作过程,更不用说对决策的支持。计量单位的设置和使用状况对于保证数据的准确性和一致性,提高系统的可用性是非常关键的。

    目前MRP/ERP在国内的各种规模、类型的企业中都有不少的应用案例,文中主要从技术方面,结合在企业ERP应用中的体会,浅谈企业ERP应用中关于计量单位的使用。分析计量单位的概念模型、逻辑结构及在业务处理中的具体应用,并针对具体行业分析特殊的业务需求对数据的要求及计量单位的设计支持。

2 计量单位的概念模型

    计量单位是对实体属性进行量化描述的指标,是相对独立的信息,可以不依赖于具体的对象实体而单独对其进行管理。如“瓶”可以作为数量的量度,它不依赖于其度量的具体对象实体独立存在,可以用于度量液体、气体或者固体物质等。然而相对于其度量的不同实体,量的含义是不同的,如一瓶酒精,可能是500毫升,而一瓶药片,可能是100片。

    根据描述的实体属性不同,可以对计量单位进行分组,如长度、数量、重量、体积单位等等。每一个计量单位组一般包括了有相对固定换算关系的若干个单位,如长度单位包括米、分米、厘米、毫米等,它们之间的换算关系是有国际/国家/行业标准的,如l米=1000毫米;又如数量单位一般包括个、打、盒、箱等,有的单位之间的换算是由固定习惯规定的,如1打=12个,还有些单位之间是没有固定的换算关系的,只有当它们用于度量具体的实体对象时才能够确定它们的换算关系,如一盒到底装多少个,只有在真正用盒子去装东西的时候才能定下来,根据盒子的大小确定不同的盒装量。

    根据上面的分析,需要描述计量单位的分组特性及组内的通用换算系数,又要描述计量单位与实体对象之间的使用关系及换算关系,同时在业务单据处理中还要指明不同实体对象的业务单位,如图1所示。计量单位作为独立的实体,相互之间可以定义标准的或者习惯的换算关系。每一单位组包括了若干具有相同特征的计量单位,其中的某一个被定义为基本单位。其他的可选单位可以定义与基本单位的换算关系,说明一个可选单位相当于多少个基本单位。如毫米作为长度


图1 计量单位E-R

    单位组的基本单位,可选单位有米、微米等,他们的换算系数分别定义为1米=103毫米,1微米=103毫米。每一个实体对象必须定义一个主单位作为在库库存管理及库存出入管理的计量单位,此外可以定义几个次单位及若干个针对不同业务领域的业务单位。当不同类型的业务发生时,可以使用相应的业务单位来处理业务单据要处理的实体对象的数量。对于每一实体对象的各个业务单位,必须定义与主单位的换算关系,可以继承单位之间的组内换算关系或者重新定义。但是次单位可以与主单位之间没有任何换算关系。

3 业务处理中的计量单位应用

    3.1 物料主单位

    在ERP系统中,物料主单位的定义和使用是保证整个ERP系统的业务数据一致性及准确性的关键。虽然不同的业务操作类型往往有着不同的计量单位要求和使用习惯,但是如果业务单据上只记录物料的业务单位及其数量,随着业务流程的流转,当信息在不同的业务部门之间传递的时候,可能会引起数据失真。业务信息的传递往往需要做单位的转换,虽然不同的业务单位都定义了相应的换算系数,可以通过主单位进行换算,但是如果换算系数发生变化,两次转换的结果就会不同,可能还会给后续的业务处理带来隐患,并且影响业务数据的查询分析。所以在业务单据中不仅保存业务单位及数量,还要保存主单位数量,两者之间的转换是在单据生成的时候自动进行的。

    物料主单位作为基本信息一旦使用则不能再更改。因为物料在库库存及库存出入操作都是用物料主单位记录的,如果更改物料主单位,将会使当前库存及历史出入记录中的数量记录失去意义,否则就必须同时更改这些相关记录,而这将是一个代价很高同时又冒很大风险的操作,如果在过程中出现什么问题,其结果是难以预料的。因此ERP软件中一般也不提供这样的功能。

    所以,物料主单位的定义和选取应该经过慎重地考虑,以能够准确反应物料数量信息,而又不产生过多的小数位或者数量太大导致数据溢出为原则,同时还要考虑跟其他计量单位的换算方便。

    3.2 业务单位

    在ERP系统中要处理各种业务,如采购、库存、生产、销售、应付应收款、固定资产等等,而不同业务在处理同一物料时可能会有不同的计量单位使用习惯和要求,系统应该支持客户自定义业务单位,并且在业务处理中自动使用。当保存业务单据的时候,系统自动根据定义好的业务单位和主单位的换算系数将业务对象的数量转换为主单位的数量,单据中同时保存业务单位数量和主单位数量。如采购业务的采购计划中,用户可以根据采购习惯在基础数据中定义好物料的采购用计量单位,当维护采购计划的时候,系统根据用户选择的物料自动提取相应的采购单位作为业务单位,当然用户也可以修改,在与物料主单位有换算关系的计量单位中选择其他的单位,当采购计划保存的时候,系统自动计算相应的主单位数量。当采购计划执行生成采购订单的时候,采购业务单位及其数量同主单位数量一起转入到采购订单中,当然用户可以改变业务单位,这时候业务单位的数量是根据主单位的数量转换的。等到采购订单真正收货入库的时候,用户仍然可以按业务单位进行入库数量的操作,但是库存入库单上的数量是按转换后的主单位数量进行记录的,保存更新后的在库库存也是按主单位计数的。

4 快速实施

    针对上面的分析设计,在具体实施中,可以根据不同行业的实际需求,通过预先设计不同的行业计量单位管理模板,来支持对不同行业的快速实施。

    如在流程行业中,产品一般是液体、气体、无固定形状的软体或固体等,物料的数量一般以公斤、升等这样的单位来衡量的,但也会用到桶、瓶、罐、个等这样的单位,在不同的情况下这些单位的含义和用途是不相同的。如瓶在用于装气体时,受容积和封装条件的影响,实际容纳的物料重量是不同的,所以每一瓶的重量会有差别,虽然库存管理中可以记录物料的瓶数,但是存货计价却是要按重量进行计价的,因此在库量及库存出入库的管理还是以重量进行管理,瓶只是作为业务过程中的辅助计量单位。又如在钢铁行业中,钢坯是以块来计量的,即使他们的重量相差较多,在库存里都是一块,但对于存货计价和业务使用来说,重量还是必须的。象这样的情况,就可以定义次单位,设置主单位为重量单位,而设置次单位为瓶、块等,并且次单位和主单位可以没有任何换算关系,在业务处理中,次单位数量是很容易计数的,主单位的数量以实际测量为准,跟其他业务单位的换算也要以主单位为基础进行。

    ERP软件供应商及实施咨询机构通过大量项目的实施积累了许多关于行业的业务知识,加上来自不同行业的专家的建议,总结各行业的业务特点,按照业务领域对业务进行分类,分析行业业务中经常使用的计量单位,对其进行分组,并定义标准的换算关系。在ERP软件产品包中将这些作为行业的计量单位管理模板,在实际的项目实施中,可以快速调用模板完成计量单位的基本设置,当然用户可以在模板的基础上进行增减,定义自己需要而模板里没有的计量单位。用户的主要任务是设置物料的主单位,并且根据业务分类确定业务单位以及与主单位的换算关系。

    业务单位的使用主要是方便用户业务操作,符合用户的业务单位使用习惯,业务对象的实际数量是以主单位来记录的。这样就算是业务流程发生变化,业务单位的使用需要调整,用户也很容易设置,因为主单位的数量是不变的,业务单位的调整只是改变了业务单据的表现,业务单位及数量的显示需要根据变化后的业务单位做适当调整。

5 结论

    文中提出的计量单位设计及实现结构具有明显的优势:①设置灵活,使用方便,用户可以根据自己的使用习惯定义业务单位;②通过总结预设模版,方便快速实施:③可扩展,支持企业业务流程的变化和重组。

    目前有些供应商提供的ERP产品软件,把计量单位看作完全独立的信息实体,不同计量单位之间可以定义系数进行换算,但是不同具体物料相关联,这就导致某一单位,如箱,在用于具有相同主单位的不同物料时无法定义与主单位的换算系数,因为很可能对于不同的物料其换算系数不同。于是就不得不对每种物料定义不同的箱,如25只箱、12只箱等等,带来计量单位管理上的混乱,同时也很容易引起使用混淆、数据不一致等问题。

    对于特殊的行业,其计量单位的使用管理有一定的特殊性,在软件的设计实现中应给予充分的考虑,如流程业,否则等到项目实施的时候才处理这样的问题,会严重影响项目的进度,并且匆忙的处理也不一定能考虑全面,容易导致一些不易发觉的隐患。

    总之,计量单位的管理和使用对于整个ERP系统的数据一致性及使用方便性是很关键的一环,在软件设计实现中就应该针对不同的行业进行详细的调查、抽象,在~个比较合理的设计框架中再充分考虑典型行业的特殊性,让软件既能方便处理一般的应用,又能处理特殊行业的不同需求。
页: [1]
查看完整版本: ERP系统中计量单位的设计和使用