技术开发 频道

四大理由 将开源ERP软件拒之门外

  【IT168 评论】有一段时间,我受雇于一家企业,帮他们实施一个开源的ERP项目。经历了半年多的折腾,以前我对于开源软件的一点热情都被彻底消灭了,让我看清了开源ERP软件的面目。我想,我以后再也不会用开源的ERP软件了。我采用的是号称最大的开源ERP软件-Compiere。

  一、开源ERP的软件BUG,让我“头疼不已”。

  像ERP这么复杂的管理软件,有几个BUG也是难免的事情。但是,若一个软件到处是BUG,到处是陷阱,那可真的让人受不了。开源的ERP软件,漏洞之多,实在出乎我所料。

  如在产品基本资料处,有个属性的字段,但是,奇怪的是,这个属性竟然不能够带到采购单、领料单等相关单据,让人想不通,后来让专门的服务商进行测试,说是软件的BUG,但是因为这是开源的软件,所以,这个费用还是要企业自己来承担。

  如某个材料有多个供应商,而不同的供应商价格又有所不同。如某个原材料A,其有两个供应商甲与乙,价格分别为6.6元与6.7元,企业设定的 标准价格与列表价格为6.5元(采购参考价格),但是,在实际生成采购单时,无论是向甲供应商还是向乙供应商采购,带出来的价格竟然都是6.5。这是在让 我想不通,软件设计者为何如此设计,我想,这应该是一个软件的BUG。没办法,我只好来做一回产品设计工程师,把这个BUG解决了。

  这些漏洞真是数不甚数。在软件的测试阶段,时常让我头疼不已。每测试一个流程,都是提心吊胆的,担心,不知道哪里又有陷阱。

  二、功能不足让我“废寝忘食”。

  我从来没有见过Compiere功能如此不全的ERP软件。虽然其实开源的,但是,功能如此不全,也让人意料不及。

  如我采购价格想保留更改历史,但是无论如何配置,都无法实现。有些单据时可以保留历史变更记录的,如产品基本信息,但是,材料价格却不行。后 来发现,只要单据中有两个关键字的页签,都无法保留历史更改记录。而原材料采购价格处,有两个关键字,一是关联原材料基本信息,二是关联供应商信息,所 以,就无法保存历史变更记录。

  如没有专门的单据变更单。如我因为某些原因,采购单需要变更采购数量或者采购交期,但是没有采购变更,需要把原有的采购单作废掉或者重新撤销 审核(系统还没有直接撤销的功能,要在后台数据库中更改),我真是要叫上帝保佑了。企业需要怎么办呢?只好自己动手,先探寻各个单据之间的关系及数据库的 结构,然后再开发出一个采购变更单页签,实现采购单变更功能。生产变更单、销售变更单等也都没有,我也只好熬几个通宵,把这些单据开发出来。

  再如,仓库成品入库时,竟然不能分批入库,这真让人哭笑不得。如一张生产订单我有10000个产品,能够保证一次性入库吗?难道要生产部门把 生产完成的产品暂时放在车间,等生产全部完工后,再一次性入库吗?这用户可不会答应。如何办呢?进行二次开发了,还能怎么办呢。先要把原先的入库单功能屏 蔽掉,然后再新建一个入库的单据,设计能够从生产订单自动生成入库单,并且,在入库时对领料数量、入库数量进行检验,判断有没有超领、多入库的情况,同 时,入库的数量还要更新生产订单的完工数量。小小的一个入库单,就要我加入如此多的功能,这是烦心。

  一个项目下来,开源软件在功能开发前后可是大变样,大概增加了50%左右的功能。“废寝忘食”用来形容我当时的努力,可是一点都不过份。

  三、缺乏服务技术支持,让我“求救无门”。

  开源软件虽然是开源的,免费提供源代码,但是,相关的技术文档确实少的可怜,中文参考资料更是凤毛麟角。我有点怀疑,他们开发这么复杂的开源ERP系统是怎么实现的,难道没有系统设计文档吗,还是他们故意不拿出来,想凭此赚钱?

  我公司在实施这个开源的ERP项目时,花了万把块钱买了一个软件的实施文档,其他资料,如开发指南等没有购买。所以,什么资料都要我自己去网上查询,但是,资料实在是少的可怜。没有办法,只好自己研究源代码,研究数据库结构。

  虽然市场上已经有不少的公司在打开源Compiere软件的主意,他们付费提供Compiere的实施开发服务。但是,我找了几家公司,效果实在不满意。一方面,他们顾问能力不强,我们提出一个需求,他们反而让我提供解决方案,这真让人哭笑不得呀。一般情况下,我们提出一个需求,对方实施顾问给我解决方案,然后我们判断是否可行。现在倒反过来了,能不让我感到奇怪吗?而且,收费又比较贵,让他们提供服务与技术支持的话,就失去了开源的好处了。

  怎么办呢?我只要自力更生,闭门造车,研究了一个月,总给我弄出来一点门堂。还好我在之前有比较丰富的ERP实施经验,对于ERP实施中可能 出现的一些问题有所了解,在事先做了比较充分的准备工作,不然,在如此情况下,实施ERP项目,没有外部的支持,肯定是要出乱子的。

  如我在事先,对于员工的需求做了具体的调研,做的非常的详细、具体,在后续的实施过程中,尽量减少了需求的变更。如此,是为了减少以后二次开发的数量。虽然如此做,时间浪费了一点,但是,后来回头来看看,花点时间在需求调研上,对以后项目的顺利开展还是很有帮助的。

  四、实施、开发,集与一身,让我“心力交瘁”。

  一开始,公司雇佣我时,说让我做ERP实施顾问,负责企业的ERP实施。但是,没有想到,在后来实施的过程中,开发占了我大部分的时间。这让我这个不是技术出身、没怎么接触过软件开发的ERP实施顾问,英雄无用武之地。

  上面我说过,无论是开源ERP软件本身的BUG,还是因为其功能的严重缺乏,都需要我们进行大量的二次开发。而因为缺乏外部的服务与技术支持,还出于项目实施成本的考虑,所以,我这个实施顾问,不得已,只得兼任程序开发员,负责ERP软件的二次开发。

  在这个开发的过程中,资料缺乏、没有外部支持、没有开发经验,一切从零开始。如此熬了几个月后,终于有所成就。但是,这个过程,让我心力交瘁。

  一般的开源ERP软件,肯定需要进行很多的二次开发,而企业本身决定使用开源的ERP项目,本来就是出于节省项目成本的考虑,所以,他们不可能把二次开发外包给专门的软件公司,不然项目成本比那些商业的ERP软件来说,不会便宜多少;同时,企业本来就不是专门的IT公司,所以,也不会专门雇佣程序开发人员,来协助你。所以,一切都只有靠我自己来完成。

  经过半年的努力,虽然开源的ERP系统基本上线了,但是,其使用效果根我以前实施的商业软件还是有一定差距的。有了这段经历后,我对开源的 ERP软件有了新的认识。以后若让我选择商业软件还是使用开源ERP软件,我想,我绝对会选择商业软件。对开源的ERP软件项目,我会退避三舍。

0
相关文章