在sourceforge.net网站上排名开源ERP类旁榜首,那应该是真金白银的——不光有华丽的外表,更应该有稳定的内核。经过本人的一番长时间的实验测试,果然名不虚传。本文我从以下几方面谈谈我个人的看法:
1.OpenbravoERP的发行
1.1. Openbravo ERP版本的成长
1)、阿发/贝塔版本(alpha/beta):在阿发版本阶段,我们每周发行一个阿发版本,当条件成熟时发行一个贝塔版本。版本格式是:<主版本号>alpha-r<阿发版本号>和<主版本号>beta,如2.50alpha-r10,2.50beta。这个版本建议不要用于生产环境,等放出了正式版之后再用也不迟。
2)、正式版本:当贝塔版本足够成熟和稳定后,就放出一个正式版本,如目前的正式版本是2.50;
3)、维护版本:从2.50版本之后我们根据用户的反馈和bug修补情况,发行一系列的维护版本,格式是:<主版本>MP<维护版本号>,如截止到2010年3月28日的维护版本是2.50MP13。维护版本可以用于生产,维护版本号越大,说明越稳定,bug越少。
最后我再来看看OpenbravoERP版本的生长路线:
2.50alpha-r1-->2.50alpha-r2-->…-->2.50alpha-r11-->2.50beta-->2.50-->2.50MP1-->…-->2.50MP13。
1.2. 版本类型:社区版和专业版
与社区版(Community Edition)相比,专业版(需要每年缴纳订阅费,有的扩展模块还需另外购买license)可以获得如下额外服务:
1)、可以安装和升级包含在订阅费里的扩展模块,对于需要单独购买license的模块还需另外付费;(当然对于免费的模块两类版本都可以安装和升级)
2)、可以打补丁、升级和获得购买期内的各种服务,如bug修补、问题解答等。
如果您公司的技术力量高超、且技术员对企业内部流程了如指掌,完全可以采用社区版,社区版具备了大多数的ERP核心功能模块,但是不包含一些由第三方开发的商业性质的扩展模块,当然可以自己开发或者购买这些模块,比如商业版的人力资源模块和CRM模块等。
2. 系统要求
2.1. OpenbravoERP运行环境
1)、 支持的操作系统:windows 2000, XP*, Vista;Ubuntu*, RedHat*, CentOS, Debian, Gentoo, OpenSUSE, FreeBSD, Mac OS X, OpenSolaris, Solaris 10;
2)、 支持的硬件结构:X86*, X86_64*, IA-64, Sparc, PowerPC, AIX;
3)、 支持的数据库:Oracle 10g R2或者11g,标准版和企业版都行(推荐使用11g);PostgreSQL 8.3.5或者更高版本(带有ossp-uuid支持的);
4)、 其他软件:Java 2平台标准版6.0或者更高版本;Apache-Tomcat 6.0.x;Apache-Ant 1.7.0或者更高版本(推荐使用版本1.7.1);
5)、 使用到的技术有:Java, PL/SQL, XML, HTML/CSS, PDF;
6)、 支持的浏览器:Firefox 3.0或者更高;IE 7.0
注意:这些都是经过openbravo官方测试通过的,其他的环境也许页可以,但不能保证。
2.2. 本地化
本地化主要涉及语言本地化和会计本地化。目前OpenbravoERP已经实现的本地化国家(含语言和会计科目)有,但不同的国家实现了不同版本的本地化,比如中国只实现了2.2x版本(2008年7月之后就再也没有更新了),后续的更新一般只涉及语言,而会计科目不用改变。2.50前的版本需要手工下载语言和会计科目文件(从下载,中国的会计科目文件从下载),然后再语言和导入会计科目,2.50以及之后的版本直接作为扩展模块安装(参考安装扩展模块)。
3.OpenbravoERP概况
在sourceforge.net网站上排名开源ERP类旁榜首,那应该是真金白银的——不光有华丽的外表,更应该有稳定的内核。经过本人的一番长时间的实验测试,果然名不虚传。
1)、可以完全依赖开源软件构建稳定的生产ERP环境,当然硬件设备除外。除了购买硬件费用和招一名熟悉开源软件和企业流程的技术员之外,再也不用为其他软件付费了。看看这些开源软件组成的最佳组合:Linux + PostgreSQL (大象) + Apache-Tomcat(猫) + Apache-Ant(蚂蚁) + SUN JDK + Openbravo ERP + Firefox + Eclipse。看到了吗?连同客户端和开发工具全是开源的,而且这样的开源组合几乎是完美无缺的——稳定、快速、安全、灵活!
2)、具有丰富的文档资料。这一点不像Compiere或者国内的恩信ERP(不过恩信现在不开源了),文档资料需要购买的,而Openbravo ERP则是完全开放的,你看看网站,上面应有尽有,从安装、配置、使用到建立开发环境、以及如何开发模块等等都有详细的资料可循,但是目前大部分都是英文的,中文资料比较少,不过我宁愿看英文资料,中文如果翻译不好,看得云里雾里的。
3)、非常国际化。目前的版本经过简单本地化设置就可以适用于上百个国家,不过不同的国家语言本地化的版本不一样,比如中国简体语言只汉化了2.2x(2008年7月之后就没有人再去跟踪OpenbravoERP的新版本做汉化了),在低版本的基础上作高版本的汉化是非常容易的,接下来我打算尽一份个人的努力做好新版本的汉化工作,中国的会计制度从2008年到现在几乎没什么变化,所以会计的本土化可以继续沿用2.2x版本的。
4)、多实例化。安装一套软件,能同时让很多企业的很多分支机构使用,互不干扰,而且每一个实例(这里也可称为实体)都有一个管理员,实体管理员全权负责本实体的管理,如创建角色、用户、定义菜单等等,这一点尤其适合做SaaS应用。换句话说,就是同一套机器上跑的Openbravo ERP能同时让很多家企业使用,只要赋予不同的用户名和密码即可,而且内部仍然是采用同一个数据库和一样的表。记得我以前想利用恩信ERP搭建同样多实例化生产环境,结果耗费了我好几天,硬是没有结果。另外一点就是对于多分支机构多会计单位的企业也能轻松应付。为什么有人总是说Openbravo ERP适合于中小企业使用呢?我都不明白,难道仅仅是因为免费的原因?大企业有钱,所以不会使用免费的软件吗?但你也可以采用订阅购买的方式付费啊,同样能获得满意的售后服务。
5)、灵活的业务实体架构。多实例化源于灵活的业务实体架构,这一点我非常佩服Openbravo ERP开发团队,构思巧妙,独具匠心。这里的实体(client-entity)就是指单独使用ERP的企业或企业部门,在Openbravo ERP中还定义了一个虚拟实体system,因此对于一个生产环境中的Openbravo ERP,必须具备两类实体——虚实体system和真实体Client(至少一个真实体,即一个在使用该ERP的企业或者部门,否则这个ERP就没有价值了,一个没人用的ERP环境有何价值?我说得没错吧)。这两类实体的示意图如下:
任务1:建立“结构数据”完成如下步骤:
A)、创建全部的对象:机构*,业务伙伴,产品,会计报表,税务报表等等;
B)、创建一个初始用户和一个角色,并且把这个角色添加给用户Openbravo,也就是说此后Openbravo用户可以赋予这些角色,从而访问本实体内的数据;角色命名为“<实体名> Admin”,比如如下例子:
将创建用户:zzjxAdmin,角色:中舟机械 Admin。显然用户zzjxAdmin是实体“中州机械”的管理员(默认密码与用户名一样,登录的默认角色是“中州机械 Admin”,此后该管理员可以在本实体中创建更多的机构、用户和角色。
任务2:建立“会计数据”完成如下步骤:
A)、创建会计期间;
B)、创建套账;
C)、创建会计科目;
D)、创建会计维度;
如果没有勾选“会计单位”,那么本任务是不会执行的。这一点对于纯管理的单位非常有用。
任务3:建立“财务数据”完成如下步骤:
Creates all the document types and their sequence. This is something mandatory to be able to create transactional documents.
任务4:建立“基础数据”完成如下步骤:
Creates a sample data (all the data is created with the name standard) to be able to start doing things with the application. It would be like a little configuration. All this data is created under this new entity and with organization * so it can be used by any other organization that belongs to this entity.
6)、适用的企业类型繁多。既可以用于制造型企业,也可以用于管理型机构,还可以用于商业性企业;既可以是会计独立单位,也可以是非会计独立单位,既可以是跨地区跨过度的大型企业,也可以使中小企业单位。
7)、最为完善的安全控制机制。OB把安全分为操作安全和数据安全,操作安全规定一个用户哪些功能元素(如菜单、窗口、表单等)可以操作,哪些不许操作;数据安全规定用户允许访问哪些数据和对这些数据具有何种操纵权限(如浏览、修改、写入等)。
i)、操作安全。操作安全涉及用户、角色和权限。角色本质上就是一些权限的集合,通过给用户赋予或者剥夺某个角色来实现授权和撤权。一个用户能登陆ob,它具备的条件是有密码和至少赋予一个角色,一个用户可以被赋予许多角色,但在同一时刻只能赋予一个角色(有效角色),在登陆后用户自己可以改变自己的有效角色,当然这些允许改变的角色集是由上一层管理员定义好了的,自己不能随便修改角色集;OB把权限分三级定义:部门级、功能操作级和表级,部门级权限规定那个部门允许进入,功能操作级权限定义哪些功能元素可以操作,哪些不允许操作,而表级权限控制哪些表可以访问,不能访问的表,那么该表对应的功能元素“标签页”(tab)是不能操作的。操作安全也称为垂直安全。
ii)、数据安全。也称为水平安全。主要用来控制实体、部门、访问级别和用户级别。规定哪些实体/部门(client/organization)的数据是可见的,存在五种可能的级别:
System, System/Client, Organization, Client/Organization, All。
下表表述了每种级别的权限:
|
Client |
Org |
Description |
System |
0 |
* |
只可访问client 0和Org *中的数据。比如字典(Application Dictionary)。 |
System/client |
Non 0 |
* |
除了client 0外的任何实体和Org *中的数据都可访问。比如主数据(master data)。 |
Organization |
Non 0 |
Non * |
除了client 0和Org *之外的任何实体和部门中的数据都可访问。比如交易菜单(transactional documents)。 |
Client/Organization |
Non 0 |
Any |
除了client 0之外的任何实体和特定部门的数据都可访问,比如交易菜单(transactional documents)和主数据(master data)。 |
All |
Any |
Any |
可以随心所欲。 |