IDOC配置手册

上传人:小**** 文档编号:108973619 上传时间:2022-06-16 格式:DOC 页数:29 大小:858KB
收藏 版权申诉 举报 下载
IDOC配置手册_第1页
第1页 / 共29页
IDOC配置手册_第2页
第2页 / 共29页
IDOC配置手册_第3页
第3页 / 共29页
资源描述:

《IDOC配置手册》由会员分享,可在线阅读,更多相关《IDOC配置手册(29页珍藏版)》请在装配图网上搜索。

1、IDOC配置手册作为目前ERP市场上最为领先的应用系统之一,一直以来,SAP R/3在提供API应用编程接口和接口工具方面也同样领先于其它ERP厂商。ALE/IDocs是SAP公司为SAP R/3 R4.6C版本所提供的接口机制,目前应用最为广泛。在 R4.0以后的版本中,又添加了技术上先进的BAPI。本文作为系列介绍之一,对ALE/IDocs, BAPI以及其它可用的整合方式进行介绍。1、ALE/IDocs是什么? ALE 是Application Link and Enabling的缩写,是SAP专门为SAP与SAP之间所设计的整合中间件。IDocs是中介文本 (Intermediate

2、DOCument) 的缩写,是SAP提供的系统整合专用的数据/消息格式。ALE在SAP 3.0版本开始就作为SAP整个应用体系的一部分,为分布式数据交换提供了可靠安全的通讯机制。ALE的设计,原本作为两个SAP流程之间的一种消息传递服务(Messaging Service) ,使SAP与SAP的业务流程之间企业数据能够有效的交换,为两个独立的SAP之间提供了的系统整合服务。不过,随着应用的发展,ALE/IDocs接口机制也已然成为与其它非SAP系统的标准的整合方式。 ALE的设计结构可以分为三层,即应用层,数据/消息分配层和通讯层。通讯层是SAP整合机制的基础,它利用远程功能呼叫RFC(Rem

3、ote Function Call) 调用SAP系统的功能模块。数据/消息分配层,主要提供三个关键服务: 按数据分配模型决定数据接收者。消息的过滤和转换。数据/消息的压缩,以提高传递效率。 应用层直接与SAP系统接口,生成或从其它系统接收含有路由信息的消息文本IDocs,包括消息接收者的姓名,要求发送的类型以及对消息进行处理的规则。ALE的机制代替了原来的SAP所提供的批数据通讯BDC(Batch Data Communication) 方式。顾名思义,BDC为系统之间提供了简单的数据批处理服务,还不能作为一种中间件技术,它没有提供系统之间进行无缝整合所要求的纠错功能、系统管理和其它安全措施。

4、总得说来,应用SAP的ALE机制进行SAP与SAP或非SAP系统整合有以下几个好处: ALE技术不受SAP版本升级的影响,它提供了版本向后兼容性。ALE定义于SAP应用层,与SAP的逻辑层相对独立,整个ALE中间件独立于发送和接收系统。ALE消息设计逻辑保证消息的“一次且只有一次”的消息传递。ALE采用“存储-发送”技术确保消息即使系统发生故障或接收方没有准备接收时也可以达到目的地。这样就保证接收方不至于收到重复消息。ALE也提供了IDocs管理功能。主要有文本缩减、文本版本控制以及文本数据过滤。三种控制机制使得SAP开发人员可以根据实际需要对IDocs文本在运行中进行动态处理。ALE提供了系

5、统管理功能,允许对ALE系统进行启动/复位/恢复等系统操作,为开发人员提供了进一步的管理控制。 IDoc 几乎可以传带任何SAP应用的数据,是一种“外围”定义格式,与SAP的应用数据定义不直接相关。IDocs已经广泛应用于早期的SAP-EDI的数据交换,因而它的设计有点类似于EDI的标准,即EDIFACT标准。 IDocs是以字符基础的,因而是可读的。它有三种纪录类型,即: 控制纪录-含文本信息,如IDoc类型,发送/接收方信息以及文本标识。数据纪录-含管理和实际数据部分。状态纪录-用来追踪文本传递各点的状态,如状态码,系统时间,错误标识等。1.自建IDOC类型32.扩展标准IDOC103.

6、WE21,选择端口类型后点新建按钮154. 配置分布模型和伙伴参数195.激活指针23RBDMIDOC 增量发送程序236.设置筛选器247.异常处理291.自建IDOC类型1.1首先创建用来记录增量发送时间戮的自建表ZIDOC_LOG,结构如下图:通过自建表来记录IDOC发送的时间戳,有一定的漏单危险,推荐每次取值设置的时间为当前时间往前一段时间来避免因为 多次IDOC发送过程中遗漏的记录。假如想统计或查询已发记录,可以通过自建表来保存已发送信息。1.2WE31定义自定义段ZMKAL(用于自定义IDOC类型发布生产版本),开发完成后可设置批准,表示开发完成,如需修改则需要取消批准1.3WE3

7、0定义基本类型ZMKAL_IDOC,将刚才定义的段ZMKAL挂在此类型下,开发完成后可设置版本,表示开发完成,如需修改则需要取消发布。1.4 WE81定义消息类型MKAL_IDOC。1.5WE82 把基本类型ZMKAL_IDOC分配给消息类型MKAL_IDOC。1.6定义自定义IDOC类型所需的结构ZMKAL_LINE。表结构,ZMKAL_TYP,对应行类型结构为ZMKAL_LINE1.7创建发送生产版本IDOC用的函数:ZMKAL_IDOC_SEND,源代码如下,参数、异常定义见函数开头说明FUNCTIONzmkal_idoc_send.*-*Localinterface:*TABLES*Z

8、MKALTYPEZMKAL_TYP*EXCEPTIONS*NO_IDOC*NO_MODEL*-*variablesofgeneralinterestDATA:*controlrecordfortheIDocidoc_controlLIKEedidc,*datarecordsfortheIDoct_idoc_dataLIKEediddOCCURS0WITHHEADERLINE,*tablefortheIDocscreatedbyMASTER_IDOC_CONTROLt_comm_controlLIKEedidcOCCURS0WITHHEADERLINE,*partnertypeforlogica

9、lsystemc_partner_type_logical_systemLIKEedidc-rcvprt,*helpvariableforthecheckifanIDochastobecreatedh_create_idoc.*variablesspecificforthisexampleDATA:*fieldstringswithIDocsegmentstructuree1xmkalTYPEzmkal_line,*datatobeputtothecontrolrecordc_message_typeLIKEedidc-mestypVALUEZMKAL_IDOC,c_base_idoc_typ

10、eLIKEedidc-idoctpVALUEZMKAL_IDOC,*segmenttypestobeputtothedatarecordtablec_header_segtypLIKEedidd-segnamVALUEZMKAL.*checkifanIDochastobecreated,readthedistributionmodelCALLFUNCTIONALE_MODEL_DETERMINE_IF_TO_SENDEXPORTINGmessage_type=c_message_type*SENDING_SYSTEM=*RECEIVING_SYSTEM=*VALIDDATE=SY-DATUMI

11、MPORTINGidoc_must_be_sent=h_create_idoc.*exceptions*own_system_not_defined=1*others=2.IFh_create_idocISINITIAL.raiseno_model.*nomessageflowmaintainedinthemodel,nothingtodoEXIT.ENDIF.*puttheapplicationheaderrecordtotheIDocLOOPATzmkal.MOVE-CORRESPONDINGzmkalTOe1xmkal.*appendrecordtoIDocdatatablet_idoc

12、_data-segnam=c_header_segtyp.t_idoc_data-sdata=e1xmkal.APPENDt_idoc_data.ENDLOOP.idoc_control-mestyp=c_message_type.idoc_control-idoctp=c_base_idoc_type.CALLFUNCTIONMASTER_IDOC_DISTRIBUTE*inupdatetaskifapplicationdocumentispostedinupdatetaskEXPORTINGmaster_idoc_control=idoc_controlTABLEScommunicatio

13、n_idoc_control=t_comm_controlmaster_idoc_data=t_idoc_dataEXCEPTIONSerror_in_idoc_control=1error_writing_idoc_status=2error_in_idoc_data=3sending_logical_system_unknown=4OTHERS=5.*Acommitworkhastobedone.Itcouldalsobedoneinthecalling*application.COMMITWORK.READTABLEt_comm_controlINDEX1.IFsy-subrc0.rai

14、seno_idoc.*noIDocwascreated,youcanreacthere,ifneccessaryENDIF.ENDFUNCTION.1.8程序中通过自建时间戳表来抓取增量数据,并调用函数zmkal_idoc_send。传递数据表,生成IDOC。2.扩展标准IDOC2.1新建ZE1PLPOL_TEXT(用于扩展工艺路线IDOC基本类型,增加描述文本)2.2创建扩展类型ZLOIROU02衔接扩展到基本类型LOIROU02选中段E1PLPOL,点击新建,将之前创建的段类型扩展至该段下。2.3 WE82将基本类型、扩展关联起来,通过定位查找基本类型LOIROU2。选中我们要扩展的行点复

15、制输入扩展类型ZLOIROU02填充数据则需要通过前台发送TCODE,找到其相应的出口,进行填充扩展的数据。3.创建接口端口和逻辑系统3.1 WE21,选择端口类型后点新建按钮这里创建文件类型,idoc将保存到服务器上指定目录3.2配置接收/发送IDOC系统事物代码:SALE定义逻辑系统:输入一个逻辑系统名及其描述:定义rfc目标系统以目标系统为sap系统为例:选择创建新RFC链接名称、描述和逻辑系统名一样,并输入地址/系统编号等在登录标签页输入集团号、用户名、密码保存退出4. 配置分布模型和伙伴参数4.1维护分布模型和分布视图创建一个模型试图,输入一个描述及其名称选中新创建的视图,点击添加消

16、息类型输入发送方为当前SAP系统,接收方为目标系统(逻辑系统名),并填写消息类型LOIROU(工艺路线)添加如下消息类型:BOMMAT BOM:物料 BOMCREMAS 供应商主数据分配DEBMAS 客户主数据分配LOIBOM 物料清单LOIPLO 计划订单LOIROU 路由MATMAS 物料主数据MKAL_IDOC Product Version IDOC点击菜单中的生成伙伴参数文件点击执行退回之前屏幕可以点击更改伙伴参数文件来查看刚才生成的结果并适当修改,将目标端口改为ZFILE(XML格式则为ZXML),以将IDOC存为文件或XMLWE20,双击对应的消息类型修改接收方端口如果有扩展,则

17、在扩展一项里输入扩展消息类型5.激活指针5.1完成了ALE模型配置,我们需要增量发送主数据(物料、供应商、客户、BOM)所以需要激活修改指针BD50RBDMIDOC 增量发送程序选中需要通过增量发送的消息类型BOMMAT BOM:物料 BOMCREMAS 供应商主数据分配DEBMAS 客户主数据分配MATMAS 物料主数据SALE配置筛选(限制工厂等条件)6.设置筛选器选择维护模型双击筛选器双击工厂填入值来限制工厂确定即可如果需要可以点击创建筛选组,来实现对不同情况下应用不同筛选条件完成配置。可以通过程序发送IDOC了参见IDOC发送方法7.异常处理产生的IDOC可能会失败 状态02: 处理T-CODE:BD83状态30:处理T-CODE:WE14

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!