您所在的位置:e-works首页 > 基础信息化 > SOA

SAP系统的EAI技术分析研究

发表时间:2006-3-26 赵炯 唐亮 王琮 来源:《企业技术开发》
关键字:SAP EAI IDoc EDI 接口
文章系统地分析了EAI模型和SAP系统中自带的各种EAI接口以及它们的适用对象,并着重介绍了在SAP与其它系统之间如何建立连接和数据通信的原理和方法。

    SAP与 EAI 概念综述

    SAP已经成为当今 ERP 的代名词。它占有全球企业应用软件市场份额的544,财富 500强中有804以上的公司正在运用这个软件。1992年SAP公司开始进入中国市场,并已为一汽大众、海尔、联想等各行业的优秀企业成功实施了SAP软件。
    EAI(Enterprise Application Intergration)即企业应用集成。最初提出此概念是为了实现企业内部不同应用系统之间的互连,通过应用集成实现数据在多个系统之间的同步和共享。伴随着EAI技术的不断发展,它所被赋予的内涵变得越来越丰富,并已经被扩展到业务集成(Business Intergration)的范畴。
   
    EAI 技术层次结构体系

    从普遍意义上说,EAI 概念被认为可以包括数据集成、应用集成和业务流程集成等方面。具体到技术层面上,一般认为一个完整的EAI技术结构体系应该包括应用接口层、应用集成层、流程集成层和用户交互层4个大的层面,它们的层次关系如图1所示。

           

    从结构图中可以看出:应用接口层位于EAI层次结构体系的最底层,它用于解决应用集成服务器与被集成系统之间的连接和数据接口的问题;应用集成层是用于解决被集成系统的数据转换问题,通过建立统一的数据模型来实现不同系统间的信息换;流程集成层用于将不同的应用系统连接在一起,进行协同工作,并提供商业流程管理的相关功能,包括流程设计、监控和规划,实现业务流程的管理;用户交互层则为用户在界面上提供一个统一的信息服务功能入口,通过将内部和外部各种相对分散独立的信息组成一个统一的整体,保证了用户既能够从统一的渠道访问其所需的信息,也可以依据每一个用户的要求来设置和提供个性化的服务。
   
    SAP系统中主要的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, 类型、发送/接收方信息以及文本标识;数据纪录为管理和实际数据部分;状态纪录用来追踪文本传递各点的状
    态,如状态码、系统时间、错误标识等。图4描述了SAP 系统与外部系统通过IDoc, 进行数据交换的过程。其中图 4(a)是 SAP 通过两种不同的路径向外部系统发送数据,图 4(b)是 SAP 系统以两种不同的方式接收数据的过程。   

 

    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 之间的 EAI 技术,我们需要知道怎样在 SAP 中创建和配置 ALE、IDocs 和EDI文件,并利用ABAP语言进行程序开发。

责任编辑:张敏
2
;