ImageVerifierCode 换一换
格式:DOCX , 页数:11 ,大小:50.97KB ,
资源ID:24191989      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/24191989.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(SAP r3接口技术报告.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

SAP r3接口技术报告.docx

1、SAP r3接口技术报告SAP r3接口技术报告SAP R/3 接口技术 SAP R/3提供了众多的API应用编程接口和接口工具,以方便SAP二次开发和爱好者进行研究。RFC、ALE/IDocs是SAP公司早期为SAP R/3 R4.6C版本所提供的接口机制,目前应用最为广泛。在R4.0以后的版本中,又添加了技术上先进的BAPI和DCOM。下面对这些接口方式以及其它可用的整合方式进行介绍。 一、RFC(Romote Function Call,远程函数调用)。 SAP系统RFC调用的原理其实很简单,有一些类似于三层构架的C/S系统,第三方的客户程序通过接口调用SAP内部的标准或自定义函数,获得

2、函数返回的数据进行处理后显示或打印。下面是RFC调用的模型: 这里主要不是讨论SAP R/3函数的开发,使用SAP的公司一般都有专门的ABAP开发人员,通过事务代码SE37进入ABAP开发平台的“函数编制器”进行函数开发测试。 以VB为例,SAP接口RFC的开发思路如下。在SAP客户端SAP Gui Client安装的时候,注意选择安装附带的SDK包。RFC接口程序开发,主要用的是“SAP.Functions”这个控件,通过控件在外部程序模拟SAP Gui Client的用户登录和函数调用,然后返回函数的值。 SAP的RFC调用是其接口技术中最简单和易用的一种方式,该方式开发比较简便,特别适合

3、于外部报表开发,但对于大数据量的查询效率相对较低。 在附件中有VB中调用RFC的例程。 在JAVA中也可以使用JCO接口来CALL SAP中的RFC,相关包和demo也包含在附件中。 二、ALE/IDOC ALE 是Application Link and Enabling的缩写,是SAP专门为SAP与SAP之间所设计的整合中间件。IDocs是中介文本 (Intermediate DOCument) 的缩写,是SAP提供的系统整合专用的数据/消息格式,可用于EDI、ALE或导出导入(XML,ASCII)文件等。当然也可ALE在SAP 3.0版本开始就作为SAP整个应用体系的一部分,为分布式数据

4、交换提供了可靠安全的通讯机制。ALE的设计,原本作为两个SAP流程之间的一种消息传递服务(Messaging Service) ,使SAP与SAP的业务流程之间企业数据能够有效的交换,为两个独立的SAP之间提供了的系统整合服务。不过,随着应用的发展,ALE/IDocs接口机制也已然成为与其它非SAP系统的标准的整合方式。 ALE的设计结构可以分为三层,即应用层,数据/消息分配层和通讯层。通讯层是SAP整合机制的基础,它利用远程功能呼叫RFC(Remote Function Call) 调用SAP系统的功能模块。 数据/消息分配层,主要提供三个关键服务:按数据分配模型决定数据接收者、消息的过滤和

5、转换、数据/消息的压缩,以提高传递效率。 应用层直接与SAP系统接口,生成或从其它系统接收含有路由信息的消息文本IDocs,包括消息接收者的姓名,要求发送的类型以及对消息进行处理的规则。 ALE的机制代替了原来的SAP所提供的批数据通讯BDC(Batch Data Communication) 方式。顾名思义,BDC为系统之间提供了简单的数据批处理服务,还不能作为一种中间件技术,它没有提供系统之间进行无缝整合所要求的纠错功能、系统管理和其它安全措施。总得说来,应用SAP的ALE机制进行SAP与SAP或非SAP系统整合有以下几个好处: ALE技术不受SAP版本升级的影响,它提供了版本向后兼容性。

6、ALE定义于SAP应用层,与SAP的逻辑层相对独立,整个ALE中间件独立于发送和接收系统。 ALE消息设计逻辑保证消息的“一次且只有一次”的消息传递。ALE采用“存储-发送”技术确保消息即使系统发生故障或接收方没有准备接收时也可以达到目的地。这样就保证接收方不至于收到重复消息。 ALE也提供了IDocs管理功能。主要有文本缩减、文本版本控制以及文本数据过滤。三种控制机制使得SAP开发人员可以根据实际需要对IDocs文本在运行中进行动态处理。 ALE提供了系统管理功能,允许对ALE系统进行启动/复位/恢复等系统操作,为开发人员提供了进一步的管理控制。 IDoc 几乎可以传带任何SAP应用的数据,

7、是一种“外围”定义格式,与SAP的应用数据定义不直接相关。IDocs已经广泛应用于早期的SAP-EDI的数据交换,因而它的设计有点类似于EDI的标准,即EDIFACT标准。 IDocs是以字符基础的,因而是可读的。它有三种纪录类型,即: 控制纪录-含文本信息,如IDoc类型,发送/接收方信息以及文本标识。 数据纪录-含管理和实际数据部分。 状态纪录-用来追踪文本传递各点的状态,如状态码,系统时间,错误标识等。 再来看一下ALE/IDocs在系统整合过程中消息的实际传递情况: 首先看发送过程。 一个发送过程由事件触发,文本生成,数据打包以及交由传输媒介传递这四个步骤组成,具体如下: a 应用系统

8、事件触发 系统目标(Objects) 的状态变化,用户自主活动或其它数据库特定变化等可以启动数据表的触发程序,从而进行数据传递的初始化工作,如数据准备。 b 生成主IDoc文本(Master) 按标准格式生成主IDoc文件,包含所有可以传递数据(不分接收者) c 生成通讯Idoc 从主IDoc中生成只与特定接收者有关的文本,通讯文本是主文本的子数据集(Subset) d Idoc 发送 利用异步通讯方式将一定版本的IDoc传递到接收方。 下面,看看接收过程。 接收过程始于SAP系统从外部收到IDoc文本。接收过程的优点在于,接收方既可以是SAP系统,也可以是第三方系统,这也是SAP与第三方进行

9、有效整合的基础。接收过程由以下三个步骤组成: a 存储Idoc-将文本存储于数据库,并进行语法校验 b 邮件处理程序读取Idoc-一个专门设计的IDoc处理程序读取IDoc并产生SAP或其它系统所需的系统消息。多个程序可以同时运行。 c 生成系统文本-处理程序进一步生成系统文本供系统使用,并将结果信息存于Idoc d的状态纪录中。 三、BAPI简介 BAPI是Business Application Programming Interface的缩写, 是SAP为3.0版本以上提供的基于企业目标(Business Object) 技术的接口应用界面。SAP在3.0版本以上采用了Object-or

10、iented技术,逻辑定义了SAP R/3系统的所有功能目标,并且将所有的目标(Objects) 和BAPIs存储于企业目标库BOR(Business Objects Repository)。 SAP R/3 企业目标的目标类型(Object Type) 相当于目标设计语言中类(Class) 的概念,其定义结构由以下几部分组成: 基本数据-所有目标类的通用属性,如目标标识和默认方法(Method) 。 接口界面-目标的方法(Method), 事件(Event), 特征(Attributes) 。 键(Key Fields)-供BOR中目标检索使用 方法(Methods)- 对目标进行所要求的各

11、种操作。 特征(Attibutes)- 描述目标特征。 事件(Events)- 触发以改变目标状态。 利用BAPI,开发人员可以实现对BOR进行实时访问,从而实现应用系统(SAP-SAP)之间在数据/逻辑层上的有效整合。 1、当一个用户需求到来时,首先需要确认用户的需求,主要是接口参数的确定。 2、在SAP下面输入事务代码BAPI,进入系统标准BAPI的列表界面。 寻找符合要求的标准BAPI,主要关注业务模块以及版本号,目前SAP 4.6A的为符合条件的标准BAPI接口,在文档标签中,也有关于每一个BAPI对象的详细介绍。 如果标准接口过多,或者你仍然不清楚应该调用哪个系统标准的BAPI,那么

12、你可以去咨询相关的业务专家或开发专员,S上面也可以去咨询,也可以到国外网站的BBS上咨询。 3、在找到标准BAPI后,对于每个BAPI接口而言,它都有相应的参数,这些参数都对应着具体的结构,可以在BAPI标准接口的SORUCE CODE下面双击该结构,然后可以进入该结构体的查看界面,这里你可以寻找结构体各个字段中符合你的用户需求的字段,跳出这些字段。 4、确认用户需求时主要是确认传进去和传出来的参数,这些参数比如,日期,物料列表等等,对于日期而言它是单个行项目的,对于物料列表而言,它是多个行项目的,那么你需要将单个行项目的设计成结构体,而多个行项目设计成表tables。 具体BAPI的应用,在

13、SAP系统中用事务se37 按baip*查找,再用where-use 看其如何使用,也是非常详细的资料。 SAP R/3的企业目标库BOR(Business Objects Repository)中封装了R/3的功能对象。通过BAPI(Business Application Programming Interface)可以访问BOR。BAPI是R/3平台专用的开发接口,但是从系统整合的角度看,BAPI主要是支持SAP应用-SAP应用之间的整合,SAP应用-非SAP应用之间的整合需要其他的技术,其中R/3 DCOM接口应用比较广泛。 四、SAP-DCOM接口 SAP于1998首次提供SAP-D

14、COM接口,以满足各种桌面应用开发的要求。利用DCOM连接端口,开发人员可以利用VB, C+,以DCOM目标方式访问SAP数据。在Web应用上,可以用VBScript, JavaScript 以DHTML方式页面访问,也可以用ASP访问数据。 另外,利用DCOM也可以间接访问SAP的企业目标库BOR。上面提到的BAPI是SAP系统上专用的,在实际应用上不如DCOM来得广泛。DCOM端口主要有两个技术模块组成,一个是管理模块,另一个模块生成SAP BO的DCOM 代理组件(Proxy Components),生成的DCOM组件存放于C+。代理组件有以下属性: Client-要访问的R/3客户系统

15、 UserID-R/3用户 Password-用户密码 Language-系统语言 Destination-预先定义的目标名称 另外,每个组件具有以下方法: PutSeesionInfo()设定系统一次调用的目标参数 AdviceRfcGuiSink()用于需要SAPGUI或dubugging的场合。 CommitWork()-用于数据更新,无implicit commit的场合。 InitKeys()-DCOM目标键初始化 DimAs()-返回Microsoft ADO(Advanced Data Object) 纪录集(支持游标控制)。 其它从R/3 BO定义中继承的方法。 R/3的DCO

16、M接口主要用于Windows平台的应用程序访问R/3。R3 DCOM可以除了可以访问BAPI外,还可以远程调用R/3上的ABAP程序(需要DCOM Connector 4.6D以后的版本支持)。 SAP的 frontend CD中,附带了一个R/3 DCOM的生成和管理工具,叫做DCOM Connector。通过DCOM Connector生成的DCOM组件包含两个组件,一个是业务代理组件,用于代理调用R/3 BAPI或远程方法;另一个是Session组件,用于管理业务代理组件和R/3系统的交互。 R/3 DCOM组件运行在COM+环境(或者MTS)中,通过RFC协议访问R/3应用服务器。RF

17、C是R/3开发接口的基本协议。不仅DCOM使用RFC协议,IDOC和BAPI也使用RFC调用访问R/3应用服务器。 R/3 DCOM可以被C/C+、VB等开发的桌面应用程序访问,也可以嵌入VB Script、Java Script和ASP页面从而支持Web应用。 下面简单介绍一下DCOM Connector的使用。 1、 运行环境。如果是Win2000,那么只需要VC6开发环境。如果是NT/98/95,那么需要IE5.0以上版本,并且安装微软的数据库访问组件MDAC2.5。建议使用Win2000。 2、 安装。一路默认安装,如果不需要com4abap,那么在configure com4abap

18、属性页中什么都不用填。安装后的DCOM Connector是一个Windows MMC程序。 3、 转到节点Destination,配置Destination。填入各种参数后保存,然后测试一下连接。 4、 转到节点Object Builder,选择一个Destination,输入密码登陆。然后选择BAPI或远程方法,就可以导出或部署DCOM了。 需要注意的是: 1、 如果同一台机器上安装了R/3客户端,并且建立了与DCOM Connector 同名的Destination,那么可能发生冲突。此时某个Destination,用另外的名字重新配置一下即可。 2、 在DCOM Connecctor的

19、Object Builder中,可以选择是否创建Session。Session的比较重要,以下会有介绍。 3、 DCOM Connecctor导出COM标准的C代码,包括mak文件,然后用本机编译器nmake。exe进行编译,生成COM标准的dll。因此本机必须安装VC6。 4、 在Object Builder中指定一个MTS Package名称,那么可以自动安装部署COM。建议手工在组件服务中部署COM。 5、 在DCOM Connector中,可以监控和查找已经部署在本机上的R/3 DCOM 组件,类似Windows的组件服务。 R/3 DCOM组件的使用 1、Session组件 Sess

20、ion组件的接口是ISAPSession,包括登陆验证和事务管理两方面功能。 典型的R/3登陆代码: Dim strErr As String Dim blnRet As Boolean objSAPSession As MyGoodsMvtLib。GoodsMvtSessionComponent objSAPSession = CreateObject(SAP。GoodsMvtSessionComponent。1) objSAPSession。PutSessionInfo(_destination, _username, _password, _language,_organization)

21、 bResult = objSAPSession。Logon(strErrorMessage) 典型的事务提交代码: Try / 业务代理组件的操作 objSAPSession。CommitWork() objSAPSession = Nothing objGoodsMvt = Nothing Catch objSAPSession。RollbackWork() objSAPSession = Nothing objGoodsMvt = Nothing End Try Session组件能够管理一个或一组业务代理组件。Session能够将多个业务代理组件的业务方法在同一个事务中提交,也可以在多

22、个业务代理组件中共享RFC连接。 然而,Session组件不是必须的。实际上,事务管理的方法封装在ISAPConnector接口中。Session组件的ISAPSession接口由于继承了ISAPConnector才具有事务功能。同样,业务代理组件也继承自ISAPConnector,因此业务代理组件也同样可以单独提交。不同的是,业务代理组件使用各自独立的RFC连接,且不能将多个组件方法在一个事务中提交。 2、业务代理组件 业务代理组件是R/3 BAPI和R/3远程方法的proxy。应用程序使用这个proxy就能够像在本地一样透明地调用R/3的BO。R/3中不同的业务对象对应不同的业务代理。 业

23、务代理组件可以由Session组件创建: Set oOrders = oSession。CreateInstance(sam。GoodsMovement。1) 不同的业务代理组件除了包含实现各自功能的业务接口外,都实现了一个共同的接口:ISAPCatalog。DCOM Connector利用了这个接口,对业务代理组件进行管理和监控。 PutSeesionInfo()设定系统一次调用的目标参数 AdviceRfcGuiSink()用于需要SAPGUI或dubugging的场合。 CommitWork()-用于数据更新,无implicit commit的场合。 InitKeys()-DCOM目标键

24、初始化 DimAs()-返回Microsoft ADO(Advanced Data Object) 纪录集(支持游标控制)。 R/3 DCOM更适合于小型的R/3外挂程序,或者与基于Windows的小型应用集成。对于大型R/3 EAI,必然要考虑WBI Adapter、Tibco、Webmethod、Biztalk、Crossworld等中间件产品了。 在附件中有一个关于WBI SAP Adapter 中间件的文档。关于中间件还有待进一步了解。 总起说来,SAP R/3 作为一个相对灵活的ERP系统,利用上述的各种接口技术能够实现SAP系统之间以及SAP 与其它系统之间的数据交换和过程的整合。当然,应用系统的高度客户化必将会导致系统整合的难度。随着系统功能的增加,多种可供采用的接口技术的结合也就显得很有必要。对于SAP R/3用户来说,正确选择适用的接口技术是实现成功系统整合的关键。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1