BW 推数到外部系统

前言

SAP 与其他系统实时性交互的方式主要有两种,分别为RFC 和Web Service 方式。

RFC方式,是指SAP的Function设置成RFC形式,可以由其他系统调用SAP的RFC形式。调用SAP的RFC,在J2EE(JAVA)项目里有JCO可以使用,可以调用RFC和返回结果。这个方式只要能够熟悉类似JCO的使用,就可以在其他系统中使用,但是因为SAP中Fuction属于自开发函数,需要的ABAP开发能力较高,另外只能单向进行调用,一般是和Web Service同时使用(在C++/C#项目里,也可以建立RFC,但不确定SAP也能调用其他系统的RFC)。

Web Service,就是系统交互使用Web Service方式。一般,SAP调用其他系统的Web Service还是比较常见的,其实SAP也可以提供Web Service的,这也算是与时俱进,和所谓的SOA扯上关系了。这种方法的好处是都符合WS的标准,任何其他系统都实现了相应的接口,在实时性和交互性上都有了保障。需要注意的是SAP对Web Service发布的格式要求比较严格,很多时候无法调用就是因为格式的原因,还好一般在建立Web Service Proxy的时候就会发。

一、RFC配置

1、通过TCODE【SE80】,选择函数组,我这里命名为【ZBW99】,可自行定义,该函数组创建好后,是没有下图中那些函数模块的,需要右键【ZBW99】创建【功能模块】,每个功能模块就代表着一个RFC接口。

2、当功能模块创建好后,需要对其进行相应的设置与代码编写,才可使用。首先以这个接口为例,属性页签下,需要勾选【远程启用的模块】,如果不勾选,该接口只能在当前系统中使用,一旦勾选,外部系统可直接调用该接口。

3、第二个页签【导入】指的是该接口的输入参数,调用者通过输入对应的参数值获取对应的数据,这一块可根据实际需要来自行设定。

4、第三个页签【导出】指的是接口的输出参数,一般外部系统调用BW接口时返回的数据都为JSON格式数据,即HTTP + JSON,JSON数据的解析由外部系统进行自行处理。

5、最后一个页签【源代码】,该部分是接口的主要核心逻辑部分,该接口怎么通过输入参数进行取数,怎么将数据给到最终的输出参数,都是该部分需要思考的。

到这里RFC接口基本已经创建完成了,创建完成后,开发者需要进行自测,自测完成后才可将该函数接口名称给到外部系统调用,如果外部系统是SAP,可直接通过call function 直接调用,如果是java或者大数据平台,可通过JCO调用。注意:这种方式是一种单向调用,指的是外部系统需要获取BW数据,可通过这种方式。

二、Web Service 配置

Webservice是以WSDL形式发布,即一个带有URL的XML文件。

要让外部应用能够访问SAP的Web Service(以下简称为WS),那么必须配置SAP的webservice作为服务提供者(Service Provider),则需要先后按照以下步骤进行操作:

①创建RFC函数

②给RFC函数配置WS(webservice)

③使用SOAMANAGER生成WSDL(可供外部访问的XML链接)

前面RFC已经创建好,这里直接配置WS,如下图所示:

配置过程可参考【SAP】ABAP——Web Service简介与配置方法_abap webservice-优快云博客 。

上面这种方式为外部系统调用BW的WS,配置服务选择的是【service Provider】,即服务提供者,如果需要BW调用外部系统的WS,配置的时候选择【Service ConSumer】,配置过程与上面一致。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

酔墨诗欣

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值