Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1855925
  • 博文数量: 354
  • 博客积分: 11021
  • 博客等级: 上将
  • 技术积分: 4048
  • 用 户 组: 普通用户
  • 注册时间: 2010-02-24 10:04
文章存档

2020年(1)

2018年(1)

2016年(1)

2015年(2)

2014年(4)

2013年(4)

2012年(12)

2011年(14)

2010年(37)

2009年(34)

2008年(22)

2007年(68)

2006年(102)

2005年(29)

2004年(21)

分类: LINUX

2006-11-26 00:50:38

Compiere的技术 ZT
Compiere 提供集成的客户关系管理(CRM)、伙伴关系管理(PRM)、供应链管理(SCM)、企业资源计划(ERP)和联机分析处理(OLAP)。应用程序的设计遵从Web托管,允许灵活的部署。
应用程序基于活动数据字典(Active Data Dictionary),确保功能稳定、外观统一。功能依据全球部署的策略而设计,支持多语种、多币种和多帐套。
Compiere 的设计允许根据业务的变化而调整自已。任何时候(包括生产进行中),客户都可以更改信息结构,通过调整以满足业务新的需求。
与之相反,传统系统通常是会计驱动的,致使信息孤岛的形成。这会在未来将不得不采用低效昂贵的信息桥接方式。
Compiere 基于实际事务处理提供查看信息的多种视图。该结构允许最大的弹性和外部信息的方便集成。由于这些只是视图,所以可快速得到更新。
技术总览 ↑
Compiere 是一个 100% 纯 Java 的解决方案,它架构于 Oracle 数据库技术。ComPiere, Inc. 公司正在将它迁移至数据库独立。
客户端应用程序组件完全由 Java 编写而成,并为今天的 PC 作了性能优化。Java 应用程序或 Java 小程序是大数据量情况下的佳选,因为它提供了 Windows 用户界面下的高性能。它通过瘦 JDBC 驱动程序与数据库通信,通过 RMI 与应用服务器通信。客户端程序通过 Internet 或 Intranet 访问服务器。
作为备选方案,HTML 客户端可用于扩展应用范围,当应用程序的安装或下载不方便时(如供应商、客户和员工的自助服务功能)。该部分由 Java Servlets 和 JSP 实现,宿主于 Servlet 服务器中。
基于 JMX 的应用服务器组件用 Java 实现,使用基于 J2EE 技术的 JBoss 应用服务器架构。部分应用程序功能由 PL/SQL 实现。
ComPiere, Inc. 是 Oracle、Sun 和 Microsoft 技术合作伙伴的成员,使用 Rational Rose 完成分析与设计,使用 Borland JBuilder 完成 Java 开发和调试,使用 OptimizeIt 完成 Java 性能与内存调试,使用 ParaSoft JTest 完成自动化测试,并使用 Embarcadero 产品套件完成数据库模型维护以及 PL/SQL 编程与调试。
部署方式 ↑
Compiere 具有以下主要的组件:
客户端(Client)
Java Application
Java Applet
HTML
Servlet 服务器(宿主基于 HTML 的应用程序)
应用服务器
数据库服务器
所有的应用程序组件均可部署于能够运行 Java 的操作系统平台:Windows(NT,2000),Unix,Linux,Mac,等等。
Compiere 支持广泛的配置部署策略。通信带宽允许的情况下,Java 应用程序客户端是最佳部署,128 kbps 的通信带宽就足够了。
对于 HTML 客户端,需要 Java Servlet 与 JSP 服务器。除了可用标准的 HTTP 方式的 Internet 通信,还支持 SSL 安全协议。
基于 JBoss 的应用服务器可单独部署或部署于数据库服务器。通过 JMX 完成服务器管理。
数据库服务器宿主了数据与应用程序逻辑,它通过标准 JDBC 协议得以访问。数据库级的功能通过 PL/SQL 实现。
应用字典 ↑
绝大部分应用程序不得不设计、编码和测试每个屏幕。Compiere 使用更高级的中央活动数据字典的概念,也称为信息仓库。
Compiere 的数据字典处于元数据层,知道如何访问数据以及数据是如何关联的。数据字典包含了数据实体(类型、验证等)的定义,它如何显示(屏幕标签、报表、帮助、显示顺序和相对其它字段的位置),以及显示规则。安全与访问规则也在这里维护。数据字典是“活动”的,这意味着它依靠上下文环境在运行时使用。举例来说,它“知道”一个柜台交易销售不具有付款条件,因而不会显示它。然而,如果您更改事务处理类型为标准订单,付款条件就成为事务处理的必填部署。
数据字典是用户可扩展的,因此可包含用户自定义的规则和信息。
智能用户界面 ↑
实际的 Windows 应用程序用户界面和实际的 HTML 屏幕都是运行时生成的 - 基于应用字典中的规则。这形成了统一的用户界面,使用户在不熟悉的应用程序区域中得到快速导航。该用户界面生成方法使得快速开发得以成为现实,并使生成的系统比其它应用程序相比稳定得多。
“丰富”的 Windows 应用程序用户界面充分发挥了当今的计算机处理能力,当快速反应和浏览很重要时是最佳选择。“到达”的 HTML 用户界面允许在任何具有浏览器的地方使用应用程序。
数据字典知道数据间的结构和依赖。这允许用户在正确的访问权限下,完成从任何选择列表到窗口间的缩放,数据在窗口中维护,比如可更新或输入新的信息。强大的缩放功能使得用户在输入一条订单时,可新建客户或更新已经存在的客户信息,却无需离开原来的窗口。
数据字典允许用户快速访问信息。如果您需要比公司名称更多的实体信息,可调用信息功能。例如,客户信息包含了地址与信息行信息;产品信息包含了价格、利润和有效性。信息用于需要更多信息以便作出选择之时。选择项可排序或筛选。在某些地方,可选择多条记录。
您还可查询记录,查询减少了窗口中的记录条数。用户还在增强的“示例查询”风格下输入条件。
用户可以自定义窗口布局,并可在特定情形下裁剪屏幕。
智能报表 ↑
对于大部分应用程序来言,报表是一个单独或附加的功能。Compiere 的报表基于数据字典。由于报表查看器能够访问定义,这允许向下钻取到任何引用的实体,以及横向钻取到使用该报表实体的其它实体。链接自动生成,同时确保与安全访问权限相符。
业务视图为最终用户而设计,允许使用标准 SQL 工具访问信息,无需创建 SQL 表连接。多数业务视图基于应用字典而生成。
所有的报表输出可在屏幕上查看后再发送至打印机或输出成不同格式的文档(如Excel、HTML、XML、Word 和 PDF)。
所有的报表输出允许向下钻取至任何引用的实体,以及横向钻取至使用该报表实体的其它实体。
可支撑架构 ↑
商务应用程序随时间的迁移而改变。它们需要使用新技术,并且总是需要提供更多、更智能的功能。打包的应用程序还必须支持更多功能,尽管它常常不适合于集成到核心功能中(例如自定义以及特定的扩展)。
即使众所周知打包应用程序的需求不停地随时间而变化,极少有应用程序为支撑变化和扩充而设计。
商业应用程序具有长期存在的期望,并趋向于随时间而提供更多的功能以满足增强的需求,因此提供软件框架以管理繁杂的增衍是至关重要的。如果应用程序不是为支撑日益增长的复杂性而设计,它们就将变得不稳定。
Compiere 使用以下设计原则,以创建可支撑的体系架构:
Smalltalk's MVC 架构(即 Model-View-Controller)
消息驱动的异步非藕合流程
复杂逻辑的显式规则引擎
自恢复的事务处理
Compiere 的设计基石为对象架构(与面向对象、面向组件等传统架构相比)。每个对象均与其它对象尽可能独立,包括事务处理型的非藕合。
Compiere 架构的早期版本设计于 80 年代中期,当时使用了 Smalltalk,世界上最早的真正面向对象语言与环境之一。架构的其它早期工作基于 ADV/Orga 的“Next Generation”项目,它与 SAP 的原始 R/3 项目非常相似。
自恢复 ↑
通常应用程序设计为 Fail-Safe(失败转移):它假定一切工作正常且所有的数据输入正确和一致。万一失败,专家们不得不查找原因并检查所受到的损坏。用户通常只看到问题出现了,而真实的情况是,那个应用程序有时会运行失败。
相反,Compiere 设计为 Safe-Fail(自恢复)。每个事务处理均可重复、可重新生成。绝大多数失败可由系统识别出来,并提示用户是否自动修复问题。如果不可恢复,错误被隔离,系统仍然继续运行。事务处理的非藕合设计是该能力的基础。
安全 ↑
Compiere 支持功能与数据的双重安全特性。
功能安全基于用户角色,控制对窗口、报表与流程的访问权限。
数据安全使实体与组织信息通过安全环境维护于数据库端。这是通常的数据库用户登录后的附加安全层,它使第三方 SQL 工具可以访问数据库。然而,在访问任何数据以前,用户必须提供用户名、密码、角色和语言通过存储过程登录,这样就保证了任何第三方工具对数据访问的权限与在 Compiere 应用程序中相同。
绝大部分其它应用程序并无数据库用户登录后的安全防护层,无法限制第三方的 SQL 工具访问数据。
客户端的密码以加密形式保存。
定制 ↑
除可定制智能用户界面、定制报表与扩展外,Compiere 提供更多的自定义能力。
首选项允许默认和预设的选择。
登录首选项 - 组织、事务处理日期和打印机
用户自定义首选项,如特定的事务处理类型
菜单栏允许用户在菜单中以快捷方式的形式保存窗口、流程和报表等对象,方便快速启动。
术语可以更改。例如,如果您可将“服务”更改为“服务产品”,将“组织”更改为“分支机构”,等等。
帮助文本可修改和扩展,以提供提示与帮助文本。
定制可在不同级别加以定义:
系统或实施范围
窗口
实体
组织
特定用户
更详细的级别会覆盖更一般的级别。
阅读(1665) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~