SAP ALE/IDOC

主页 » SAP文库 » ABAP

作者 勇闯天涯的虾客 2015-05-09    619
原文地址: SAP ALE/IDOC 作者: HowtoSAP

ALE(Application Link and Enabling)是SAP专门为SAP与SAP之间所设计的整合中间件。IDoc(Intermediate Document)是中介文本,是SAP提供的系统整合专用的数据/消息格式。ALE作为SAP整个应用体系的一部分,为分布式数据交换提供了可靠安全的通讯机制。ALE的设计,原本作为两个SAP流程之间的一种消息传递服务(Messaging Service) ,使SAP与SAP的业务流程之间企业数据能够有效的交换,为两个独立的SAP之间提供了的系统整合服务。不过,随着应用的发展,ALE/IDocs接口机制也已然成为与其它非SAP系统的标准的整合方式。

ALE的设计结构可以分为三层,即应用层,数据/消息分配层和通讯层。

通讯层是SAP整合机制的基础,它利用RFC调用SAP系统的功能模块。

数据/消息分配层,主要提供三个关键服务:

  • 按数据分配模型决定数据接收者。
  • 消息的过滤和转换。
  • 数据/消息的压缩,以提高传递效率。

应用层直接与SAP系统接口,生成或从其它系统接收含有路由信息的消息文本IDocs,包括消息接收者的姓名,要求发送的类型以及对消息进行处理的规则。

ALE消息设计逻辑保证消息的“一次且只有一次”的消息传递。ALE采用“存储-发送”技术确保消息即使系统发生故障或接收方没有准备接收时也可以达到目的地。这样就保证接收方不至于收到重复消息。

ALE也提供了IDocs管理功能。主要有文本缩减、文本版本控制以及文本数据过滤。三种控制机制使得SAP开发人员可以根据实际需要对IDocs文本在运行中进行动态处理。

ALE提供了系统管理功能,允许对ALE系统进行启动/复位/恢复等系统操作,为开发人员提供了进一步的管理控制。

IDoc几乎可以传带任何SAP应用的数据,是一种“外围”定义格式,与SAP的应用数据定义不直接相关。IDocs的设计有点类似于EDI的标准,即EDIFACT标准。

IDocs是以字符基础的,因而是可读的。它有三种纪录类型,即:

  • 控制纪录-含文本信息,如IDoc类型,发送/接收方信息以及文本标识。
  • 数据纪录-含管理和实际数据部分。
  • 状态纪录-用来追踪文本传递各点的状态,如状态码,系统时间,错误标识等。

ALE/IDoc的消息发送过程

一个发送过程由事件触发,文本生成,数据打包以及交由传输媒介传递这四个步骤组成,具体如下:

1.应用系统事件触发
系统目标(Objects)的状态变化,用户自主活动或其它数据库特定变化等可以启动数据表的触发程序,从而进行数据传递的初始化工作,如数据准备。
2.生成主IDoc文本(Master)
按照标准格式生成主IDoc文件,包含所有可以传递数据(不分接收者)
3.生成通讯IDoc
从主IDoc中生成只与特定接收者有关的文本,通讯文本是主文本的子数据集(Subset)
4.IDoc发送
利用异步通讯方式将一定版本的IDoc传递到接收方。



ALE/IDoc的消息接收过程

接收过程始于SAP系统从外部收到IDoc文本。接收过程的优点在于,接收方既可以是SAP系统,也可以是第三方系统,这也是SAP与第三方进行有效整合的基础。接收过程由以下三个步骤组成:

1.存储IDoc
将文本存储于数据库,并进行语法校验
2.邮件处理程序读取IDoc
一个专门设计的IDoc处理程序读取IDoc并产生SAP或其它系统所需的系统消息。多个程序可以同时运行。
3.生成系统文本
处理程序进一步生成系统文本供系统使用,并将结果信息存于IDoc的状态纪录中。



本文原始地址:http://51itbooks.com/sap/theme/760.html

转载请注明出处来自 IT文库

上一篇

AA固定资产|概述

下一篇

SAP Basis SP01 Error Message - Output device