ERP项目之集成方法研究
来源:硅谷动力 更新时间:2012-04-14

 企业在上ERP项目之前,可能已经有了其他的信息化管理软件。如办公自动化软件、企业邮件服务器项目、财务管理软件,等等。很明显,企业的ERP项目跟原先的这些管理软件都有重叠的地方。作为企业项目管理员,又一个非常现实的问题放在他们面前,当ERP项目跟原由的信息化项目有重叠的时候,他们是放弃原来的项目或者两个项目并存呢?

  确实,这是一个很难回答的问题。若两者并存的话,在明显ERP项目的效果会打折扣,甚至因为重复工作导致工作量的增加,从而导致用户的抵制,增加ERP项目的风险。而若放弃原由的项目,把原先的成果推倒重来的话,那也太浪费了,重复性投资造成了企业信息化管理成本的增加。这也不行,那也不行,还有其他方法吗?有,可以通过一定的手段,把原有的信息化项目跟ERP系统进行有机的集成,即可以避免重复性投资的浪费,又可以避免员工同时操作多套系统,增加工作量的问题。

  不过,俗话说,站着说话不怕腰疼,确实,要实现ERP项目跟原有项目的有机集成,不是说说就可以办到的。在集成过程中,会遇到很多技术与非技术层面上的问题。下面,我解决自己遇到的几个集成案例,谈谈我的系统整和经验,或许,能够对大家有所帮助。

  一、ERP项目如何跟现有的财务管理软件集成?

  一次,我给客户实施ERP项目。他们在采用ERP系统之前,已经用了将近五年时间的财务管理软件。可以这么说,公司从上到下,特别是财务部门人员,对这套财务管理系统非常的熟悉,他们不希望为了ERP系统而放弃这个财务管理软件。在ERP选型的时候,他们就希望能够把ERP项目跟现有的财务管理软件很好的整和起来。

  为此,我花了不少的时间研究他们的财务管理系统。经过我的研究,我发现,他们的财务管理系统的话,起源与应收应付模块。他们的处理业务逻辑是每到月底的时候,把采购人员整理好的对帐单录入财务管理系统,产生应付帐款。根据用户的这个业务逻辑,我设计了一个解决方案。

  首先,在ERP系统中有个对帐功能,主要完成的任务就是对供应商与客户进行对帐。当采购人员在ERP系统中完成对帐以后,治疗核对无误后,就把系统里的数据根据一定的规则产生应收应付帐款。

  其次,财务人员查看ERP系统中的应收应付帐款信息,逐笔确认要导入到财务管理系统中的信息。这主要是考虑到,企业可能由于一些特殊的需要,不惩罚供应商等等,或者供应商没有及时送达发票等等,当月先不结帐等情况。此时,财务人员就在ERP系统中指定该笔应收或者应付帐款不转换到财务管理软件中。

  最后,我们技术人员开发了一个小工具,这个工具的任务就是把ERP系统中的应收应付信息导入到财务管理软件之中。当然,首先我们必须要了解财务管理系统中应收应付数据表的设置情况。如哪些字段是必须的,数据表之间的相互联系,及字段的长度限制等等。了解好这些信息之后,接下去的任务就比较简单了,无非是一个包括UPDATE的批处理语句。在编写这个工具的最大难度,就在于对原有财务管理软件表结构的理解。原有系统的表结构了解了,那么程序员写代码也就非常轻松了。其次,就是需要对用户的业务逻辑有一定了解。因为只有对用户的处理逻辑了解之后,才能寻找一个很好的突破口,实现两个系统之间数据的转换。

  最后,要提醒一句,一个完美的结合,是两个系统相互交互的结果。也就是说,当ERP系统中的应付应收帐款导入到财务管理软件后,不是导入后工作就完成了。而是在导入的过程中,还应该有些交互的动作。如在ERP系统中要能够查询出,哪些应收应付已经导入到了财务管理中。所以,在导入的工具中,有一个回写的语句,当向财务管理软件导入一条记录的话,就会在ERP系统中的应收应付系统中,回写,表示该记录已经成功导入到财务管理软件。如此的话,查询ERP系统就可以知道哪些单据已经才财务系统中处理过了。当出现问题时,用户就不需要在ERP系统与财务管理软件之间进行相互的核对,浪费时间。

二、ERP系统如何跟邮件系统结合。

  在企业管理实务中,很大一部分时间在处理各种报表的传递。如仓库每天要发一份当日的进货明细给采购、生产与财务;而生产每个周末都要把下个星期的应到料而未到料的材料明细发一份给采购,方便他们追踪物料;生产部门还需要统计每天的领料明细给财务,方便财务人员进行成本的统计。

  我有一个客户上了ERP系统之后,还在重复这些劳动。本来的话,需要这些资料的用户可以直接在系统中进行查询。但是,问题时,用户已经习惯了享受别人的劳动果实,比习惯自己去系统导资料。为此,系统上线后,相关用户仍然每天从系统中导出相关报表,然后利用邮件形式发送给相关人员。如仓库人员第二天一上班的第一件事情,就是从系统中导出前一日的进货明细,发送给采购人员。

  客户后来向我们提出,有没有简便的方法,能够把ERP系统跟现有的邮件系统进行结合。用户不需要每次都把资料导出来后,再发送邮件给其他人员。一方面,这么做的话,效率不高。另一方面,可能导出来的数据有些错误的地方,用户会修改后再进行发送邮件。这么处理的话,就会导致发送的报表跟ERP系统中的数据不符合。从而给其他业务处理带来不小的麻烦。

  根据客户的需求,我结合企业用户的实际情况,在利用客户现有的系统下,成功实现了ERP系统与邮件系统的整和。

  其实,这也是一个非常简单的过程而已。

  首先,先跟用户确认哪些单据在发送邮件之前,不需要再进行核对;哪些数据则需要核对后再进行发送。对于不需要核对的数据,如仓库的每日收货明细,一般不需要额外的处理,就可以直接发给采购人员,这个的话,只需要写一个简单的批处理程序,结合系统的任务计划功能,每到一个固定的时间,如每天晚上十二点,让系统自动按固定的格式,把数据导出到EXCLE表格或者PDF文档,然后发送给相关的人员。这个过程的话,不需要用户的干预,而且这些过程都是在晚上进行,从而也不会对用户白天的作业产生过多的影响。另外一些数据是相关人员根据系统内容还需要进行稍微的修饰,用采购部门的材料预计到料表、生产部门的生产定单预计缺料表等等,相关用户还需要进行额外修改后,如选择具体的发送内容,才能够发送。如此的话,就ERP系统报表的显示格式,让起在上面,可以指定需要发送的内容,然后通过报表归档功能,把需要发送的报表归档起来,以方便然后查询。然后再报表上,添加一个按钮,关联一个批处理程序,当用户维护好报表以后,只要点一下这个按钮,报表数据就会按即定的格式以及预先设置的联系人,把邮件发送出去。

  其次,确认好用户的具体需求之后,接下去就是程序员写代码了。而这些需求,在程序员眼中,可以说是非常简单的代码了,没有复杂的算法,也没有复杂的模型。只是一些记流水帐般的业务逻辑,他们没花多少时间与精力,就完成了相关的功能。

  其实,我个人认为,再复杂的业务,只要我们把需求定义清楚了,业务该如何实现,一步步的全部说明清楚,那么对与程序员来讲,只是工作量上的问题,不会有多少的难度。

  三、ERP系统跟OA系统的结合。

  我有一个客户,其上ERP系统之前,已经有了办公自动化系统。每天生产计划人员会在上面及时更新生产计划及当前定单的完工进度;采购人员也会把采购定单的异常信息,如采购定单交期的调整或者价格的变化信息反映在办公自动化系统上去。上了ERP系统之后,用户的这些操作习惯还是没有改变。他们还是喜欢在办公自动化系统上查询相关的内容。

  其实,ERP系统跟OA系统的公告功能结合的话,也只是一个数据的传递功能而已。我是通过数据库的触发器帮助用户来完成两者之间的集成。如到采购员改变采购定单的交期的时候,预计交货日期在系统中保存的时候,数据库触发器就会触发一个动作,把变更信息反映到OA系统的数据库中去,如此的话,OA系统中就可以显示这条内容了。同时,也可以把仓库当月的收货记录等等信息反映到OA系统中去。如此的话,使得哪些没有ERP客户端的用户,也可以了解到ERP的相关运行信息了。

  而且,这个方法还可以解决用户端口的问题。现在有些ERP厂商,比较有经济头脑,他们的软件费用是按照用户的使用端口数来进行收费的。用户同时使用的端口数越多,其软件使用费用越高。而实际上,用户很多时候,并不需要对ERP系统进行修改操作,而只是简单的查询功能。为此,让他们白白占用一个端口,就有点浪费了。此时,我们就可以结合OA系统,把用户需要查询的一些常规信息,如采购定单的到料情况,利用触发器功能,把这些信息反映到OA系统中去。如此的话,用户需要这些信息的话,也不需要打开ERP系统去查询这些信息了,可以介绍不必要的端口开支。

  总结我的系统整和经验,我觉得难度不在于技术,而在于企业需求与业务逻辑的确认。只要这些了解清楚了,那么技术上的问题就不在是什么难题了。