[转] 自http://www.erpsas.org/home/space.php?uid=143&do=blog&id=138
IDOC技术
IDoc接口应用于SAP系统与其他系统的业务数据交换过程,包含数据结构的定义以及数据的处理逻辑,其中的数据结构即为IDoc(intermediate document)。IDoc是一种系统间通用的数据交换格式,通过IDOC,SAP系统可以和多种外部系统进行数据交换,包括SAP R2/R3/ECC、EDI子系统等外部系统等。
IDOC概述
IDOC是SAP系统之间或SAP系统与外部系统之间电子数据交换的标准数据格式。在事务处理过程中,随时会产生IDOC,例如,在SAP系统中,用户执行了一个运货交易后,可能会产生打印货运清单所需数据的主IDOC,并经过通信层进行数据传送,从主IDOC中会生成一个或多个通信IDOC。通信层执行远程功能调用,通过端口和伙伴参数(RFC链接)设定,与对方心痛进行链接。IDOC的接收者可能为ECC、R/3、R/2或者一些外部系统。
IDOC不是SAP系统的应用文档(APPLICATION DOCUMET),而是系统间数据交换过程中的媒介,其中的INTERMEDIATE包括下列两层含义。
1. 面向消息(message-oriented):IDOC中的数据隶属于具体的应用,可是事务数据、主数据或控制数据,但是其格式与具体应用中的数据格式不同,而是一种通用的标准格式,这样SAP和第三方软件都可以方便地处理IDOC。
2. 异步(asynchronous):在创建SAP应用文件之前,数据已经存在与IDOC之中了。如数据出现错误,就不会创建应用文件,直到IDOC中的错误被修正为止,即IDOC的出错处理(通常通过工作流系统实现)可以在其转换为系统应用文档之前进行修改。
通过IDOC接口可以实现SAP系统之间以及SAP系统与其他系统之间的数据交换。使用IDOC的应用必须能够写入或读取IDOC格式的数据,典型的IDOC应用如下所示。
1. ALE:用于同一个企业中不同SAP系统之间的数据交换,通过IDOC格式的数据创建分布式的系统。
2. EDI(electronic data exchange,电子数据交换):用于实现不同企业间的电子数据交换,是各应用系统间的结构化电子交换标准。EDI中的IDOC符合EDI标准,SAP格式的数据通过EDI子系统转换为EDI标准,然后与业务伙伴进行数据交换。
3. 通过业务连接器(business connector),可以将业务文档以IDOC的形式发送至INTERNET。
4. 通过IDOC也可以链接其他业务应用系统,如PC应用、外部工作流工具等。
IDCO的结构和类型
在SAP系统中,数据交换过程中的IDOC需要依照特定的规则创建。所有的IDOC都遵循被称为记录类型(record type)的通用结构。除遵循通用结构外,不同的应用文档对应不同的IDOC类型,每个IDOC类型有特定的格式和规则。
IDOC通讯结构
所有IDOC都包含技术处理过程中的管理信息以及实际的应用数据,这些应用数据存储于不同的数据段(segment)中,数据段是IDOC的最小结构单元。
在SAP系统中,还通过IDOC的“状态”存放IDOC处理过程中的历史信息(至当前位置IDOC所经历的全部状态)以及出错信息。
上数记录类型所描述的IDOC结构在SAP中对应三个具体的数据库分析表,分别用于存储含管理信息的控制记录、一段或多段含应用文档信息数据记录,一段或多段状态记录。
[img] 我的电脑桌面/IDoc.jpg [/img]
✿ 控制记录也称为IDOC头,用于惟一确定一个Idoc,其中包括IDOC的内容、结构、发送者、接收者等信息,此外还包含当前IDOC最新的状态信息。
✿ 数据记录(data record),包括多个数据段,其中包含应用数据字段(segment field).每个数据段中都包含一个标准头结构,其中包含数据段序列号、类型、说明和不超过100个字符的数据段文本。各个数据段可以独立的,也可能相互依赖,形成层级结构(父数据段及子数据段)。一个IDOC的数据记录中同名的数据段可以重复出现。
✿ 状态记录(status record),用于记录IDOC从应用到其送达方的当前以及历史状态信息,即IDOC所经过的状态日志,如“以创建”或“准备发送”等,是对IDOC进行监控的重要信息。只有SAP系统内部的IDOC才存在状态记录信息。IDOC的状态信息并不随IDOC本身进行发送,而是通过状态处理过程独立监控的。
下图为IDOC接口中的IDOC,体现了记录结构与传输过程的关系,其中状态记录独立于IDOC本身单独传输。要提醒读者注意之处是,从应用中生成的IDOC、系统传输过程中的IDOC以及存储与SAP系统中的IDOC,其具体格式和内容大小是存在差异的。
IDOC类型
IDOC类型(IDOC TYPE)是应用文档相关的IDOC结构定义,不同的SAP业务对象对应不同的IDOC类型(一个或多个)。IDOC类型中定义了数据段以及数据段的层级和次序。
标准SAP系统提供的IDOC类型也称为基本类型(basis type),该类型可以通过IDOC扩展(extention)进行调整,即在SAP Idoc类型结构的基础上增加新的数据段或者在数据段中增加新字段。
在事务WE30中,可以显示IDOC类型的定义结构,下图为IDOC基本类型FIDCCP01的层次结构,该IDOC类型对应于业务对象财务凭证(FI DOCUMENT)。
数据段
数据段是IDOC的结构组建,其明明部分包括SAP版本无关的数据段类型以及至少一个版本相关的数据段名称(或称数据段定义),如下图所示,外部系统(EDI系统)需要通过数据段名称来确定当前数据段的版本。
IDOC中的数据段类型均为定义在数据字典中的ABAP结构。SAP标准数据段类型以E1作为前缀;数据段名称则以E2开头,后面参照数据段类型名并增加版本号;用户自定义的数据段类型则以Z1开头,数据段名称以Z2开头,SAP的合作伙伴定义的数据段也可以使用其他特定的前缀作为开头。上述命名规则均通过IDOC定义工具进行控制。
创建于 20100322 为了帮助大家先理解概念以及作用,概念部分参考SAP高级应用开发一书。
分享到:
相关推荐
SAP IDOC(Intermediate Document)是SAP系统中用于不同应用程序间数据交换的标准格式。它是一种中间文档,作为数据容器,允许两个理解相同语法和语义的进程之间进行信息交换。IDOC不直接参与实际的数据处理过程,...
在 SAP 系统中,IDOC (Intermediate Document) 是一种用于不同系统间数据交换的标准格式。IDOCs 在集成业务流程、外部系统通信以及不同 SAP 实例间的交互中扮演着重要角色。然而,在实际操作中,IDOC 的处理可能会...
### IDoc配置及开发全过程详解 #### 一、IDoc简介 IDoc(Intermediate Document),即中介文档,是SAP系统之间以及SAP系统与其他非SAP系统之间进行数据交换的一种标准格式。它允许不同系统间高效且准确地传输业务...
idoc、bapi 和 rfc 之间的区别 idoc、bapi 和 rfc 是 SAP 系统中常用的技术术语,它们之间的区别在于它们的作用和应用场景。 idoc 是一种基于文档的数据交换方式,利用 message 传递,不涉及底层函数调用。idoc 的...
### SAP IDoc 应用及示例详解 #### 基本概念 ##### ALE (Application Link Enabling) - **定义**: ALE 是 SAP 专为 SAP 与 SAP 之间的集成设计的一种中间件技术。 - **历史**: 自 SAP 3.0 版本起成为 SAP 应用体系...
IDoc(Intermediate Document)是SAP中用于跨系统交换数据的标准化数据结构。SAP PI(Process Integration)系统是用于业务流程集成的工具,它可以通过IDoc与其他SAP系统进行数据交互。 当ECC系统需要将供应商主...
在这个过程中,IDOC (Intermediate Document) 是关键的数据载体,它是一个中间文档格式,用于在不同的应用程序和系统之间交换信息。在SAP系统中,IDOCs扮演着桥梁的角色,连接了SAP系统与外部业务伙伴的系统。 1. *...
在SAP系统中,IDOC(Intermediate Document)是一种用于不同系统间数据交换的标准接口,尤其在集成业务流程时,如采购订单与销售订单之间的转换。本文将深入探讨SAP IDOC在采购订单自动生成销售订单过程中的消息输出...
iDoc配置详细版 iDoc(Intermediate Document)是一种中间文档,用于在不同的系统之间进行数据交换。它是SAP系统中的一种常用技术,用于实现业务流程自动化。 标题"iDoc配置详细版"表明,这篇文章将深入探讨iDoc的...
### SAP ABAP IDOC Interface 知识点解析 #### 一、SAP ABAP IDOC 接口概述 **SAP ABAP IDOC (Intermediate Document)** 接口是SAP系统用于实现与其他系统进行数据交换的一种重要机制。IDOC不仅支持SAP系统之间的...
根据提供的文件信息,我们可以得出以下相关的IT知识点,主要聚焦于ABAP编程中IDoc的创建与处理。 ### 关键知识点概述 #### 1. **IDoc(Intermediate Document)概念** - IDoc是一种用于在不同系统之间进行数据...
这个“SAP idoc 学习实例”将帮助我们深入了解IDoc的原理、结构及其在实际应用中的使用。 IDoc是SAP系统与其他系统进行数据交换的关键组件,它基于XML格式,用于传输业务数据,如订单、发票和库存信息。IDoc的全...
IDOC(Intermediate Document)是SAP系统中用于企业间数据交换的一种标准接口,它允许不同系统之间进行结构化的数据通信。在本范例中,我们将深入理解IDOC的基本概念、结构以及如何在SAP环境中使用IDOC进行实际操作...
SAP IDoc开发配置 IDoc(Intermediate Document)是SAP系统中用于数据交换的一种标准接口,主要用于不同系统间的数据传输。IDoc作为一种数据载体,可以用于不同系统,包括SAP系统和非SAP系统之间的数据交换。在配置...
SAP IDOC 基本配置用户手册 SAP IDOC 是 SAP 系统中的一种数据交换格式,它允许不同的系统之间进行数据交换。在本文档中,我们将详细介绍如何配置 SAP IDOC,以实现数据的发送和接收。 SAP IDOC 配置 在配置 SAP ...
在SAP ABAP环境中,创建IDOC(Intermediate Document)是一项重要的任务,主要用于系统间的数据交换。IDOC作为SAP与其他系统通信的一种标准格式,能够帮助实现业务流程自动化。以下是一步步创建IDOC的详细步骤: 1)...
在SAP系统中,数据迁移是一个常见的需求,而IDoc(Intermediate Document)是一种用于在SAP系统之间传输数据的标准化结构化数据容器。 LSMW(Legacy System Migration Workbench)是一个用于数据迁移的工具,它支持...
IDOC(Intermediate Document)是SAP系统中的一种标准接口技术,用于在SAP与其他系统间交换数据。IDOC充当了不同应用系统之间的桥梁,确保数据传输的准确性和一致性。它是基于EDIFACT(Electronic Data Interchange ...