sap已经成为当今 erp 的代名词。它占有全球企业应用软件市场份额的54%,财富 500强中有80%以上的公司正在运用这个软件。1992年sap公司开始进入中国市场,并已为一汽大众、海尔、联想等各行业的优秀企业成功实施了sap软件。 从普遍意义上说,eai 概念被认为可以包括数据集成、应用集成和业务流程集成等方面。具体到技术层面上,一般认为一个完整的eai技术结构体系应该包括应用接口层、应用集成层、流程集成层和用户交互层4个大的层面,它们的层次关系如图1所示。 从结构图中可以看出:应用接口层位于eai层次结构体系的最底层,它用于解决应用集成服务器与被集成系统之间的连接和数据接口的问题;应用集成层是用于解决被集成系统的数据转换问题,通过建立统一的数据模型来实现不同系统间的信息换;流程集成层用于将不同的应用系统连接在一起,进行协同工作,并提供商业流程管理的相关功能,包括流程设计、监控和规划,实现业务流程的管理;用户交互层则为用户在界面上提供一个统一的信息服务功能入口,通过将内部和外部各种相对分散独立的信息组成一个统一的整体,保证了用户既能够从统一的渠道访问其所需的信息,也可以依据每一个用户的要求来设置和提供个性化的服务。 sap系统本身提供了优秀的eai解决方案,它主要通过ale、idocs和bapi技术实现与外部系统的连接、数据交换(edi)和流程集成(bpi)等业务功能,如图2所示。 ale(application link and enabling)是 sap 专门为 sap 与非 sap 系统以及 sap 与 sap 系统之间所设计的集成中间件。从 sap 3.0版本开始,ale已作为 sap 整个应用体系的一部分,为分布式数据交换提供了安全可靠的通讯机制。随着应用的发展,ale/idocs接口机制已成为与其它非 sap 系统接口的标准集成方式。ale的设计结构可以分为3层,即应用层,数据/消息分配层和通讯层。如图3所示。 idoc是 sap 提供系统集成专用的数据/消息格式。它几乎可以传送任何 sap 应用数据。idocs以文本字符为基础,因而编制方便。idocs中的信息从记录类型上分为控制记录、数据记录和状态记录3种。控制纪录主要是文本信息,如idoc, 类型、发送/接收方信息以及文本标识;数据纪录为管理和实际数据部分;状态纪录用来追踪文本传递各点的状 bapi(business application programming interface)是 sap 为 3.0 以上版本提供的基于企业目标(business object)技术的接口应用界面。sap 在 3.0以上版本采用了面向对象(object-oriented)技术,逻辑地定义了 sap g97 系统的所有功能目标,并且将所有的对象(objects)和 bapis 存储于企业对象库bor(business objects repository)中。因此,利用bapi开发人员可以实现对 =dg 进行实时访问,从而实现应用系统之间在数据 9 逻辑层上的有效集成。
应用接口层在 sap 中的实现 从与 sap 建立通信连接的方式上看,应用接口层的实现方法有:直接连接和通过中间件连接两种。 与 sap 系统直接连接 要直接调用非 sap 系统中的程序,可选择几种不同的方法。第一种利用 sap rfc 协议直接与sap 连接;第二种方法是利用分布式公共对象模型(dcom)协议来调用外部程序;第三种方法是利用 http 协议,它支持 abap、sap r/3 enterprise 和sap 系统通讯。其中,rfc 技术是非 sap 和 sap系统之间通讯的核心,它提供双向连接功能,同时,rfc 技术还可让外部程序直接执行 sap 事件所选模块。sap 系统也可用 rfc 协议来存取外部程序。 sap 交换基础设施 sap 交换基础设施(sap xi-exchange infrastructure)作为中间件,可全力支持 sap 产品之间或 sap 产品与其他系统之间的集成。这种中介软件可以让信息交换更平顺,更可预测,在最理想的状态下,中介软件可支持非常简单的协议,如http,以便能与外部系统进行通讯。 不同的系统之间之所以要进行集成,其根本原 因在于系统之间要进行数据交换。异构数据系统之间的信息交换需要考虑数据交换的实时性,即数据同步的程度和数据交换量的大小。根据这两个方面,数据集成可以分为数据共享和数据迁移两类。 数据共享 数据共享是为了实现不同系统间一些实时数据的交换,包括读写操作。其主要特点就是:数据交换实时性强、数据交换量小和稳定性高。 数据迁移 数据迁移是将一个系统中的数据部分或全部导入到另一个系统中。这种数据集成一般发生在企业安装新系统时,需要从原有系统中一次性装载大量数据。它的主要特点就是:交换量大,实时性较弱。 与 sap 服务器建立连接,也就是前面提到的应用接口层的集成。它是整个数据交换的先决条件。在这一阶段主要是通过程序获取 sap 的配置信息,并进行用户身份验证。在建立有效连接之后, sap 服务器会根据用户权限与外部系统进行通信。图5是与 sap 建立连接的程序框图。 数据交换过程 正如前面讲到的一样,两个异构数据系统在集成的时候,必须注意数据库的一致性和完整性的特点。所以在这里我们采用中介文档(idoc)的方法来转换数据格式。整个流程可以描述为:当外部系统数据更新以后,根据预定义格式自动生成中间文档,并触发 update 事件通知 sap 服务器。sap 服务器获得中间文档后,开始遍历 idoc 并写入数据库,最后完成对数据库的更新。与 sap 数据交换的流程框图如图6所示。 结 论 本文介绍了 sap eai 技术。企业应用软件之间的集成,它不仅会对软件的本身产生影响,而且会给整个企业带来冲击和巨变。因此在进行企业应用集成时,必须充分考虑到它会带来的费用问题和风险。所以,在计划对 sap 进行 eai 设计之前,有必要根据自己企业的具体情况拟订合适的集成方案,以确保数据的有效性、实时性、安全性。同时也可以向专门的 sap 顾问公司获得技术支持,组建强大的技术团队,只有这样才有可能使成本与风险降到最低,达到集成后的效果。 |
|