欢迎来到萧静默的博客

书山有路勤为径,学海无涯苦作舟。

SAP-RFC-PO互通(SAP使用RFC函数发布接口)

SAP PI开发手册-ERP发布服务供外围系统调用(RFC类型)

A.     配置ESR(enterprise service builder)

 

在对应命名空间下进行配置

 

1.      导入RFC

右键进行导入

 

输入目标RFC的服务器地址,实例编号,gui账号密码。点击继续

 

展开,找到对应RFC,勾选导入

 

导入后,右键激活该RFC

 

2.      创建External definitions

外部调用定义。(此接口不需要)

3.                      创建Data types

1)      发送方

接口经过ESB通道,所传数据以<![CDATA[*]]>包裹xml报文形式进行传输,所以发出方只需要输入输出各一个参数即可,此处我们使用公共数据类型:

DT_SHARE_SGHRERP2CEERP_REQ

 

DT_SHARE_SGHRERP2CEERP_RESP

 

2)      接收方

RFC类型接口,RFC侧不需要进行DT配置。RFC的导入导出参数定义就是。

4.      创建Message types

参考data types进行创建即可,RFC侧同理

 

5.      创建Service interface(服务接口)

 

RFC侧接口无需继续创建,只需创建外围系统侧的SI即可,关于如何判断SI的类别(或出入站),可以从接口设计去考虑,发送方(sender)将数据发送到出站接口(outbound),再到集成引擎(PI),集成引擎将消息发送给入站接口(inbound)再到接收方(reciver);所以对于示例接口来说,如上图:

outbound :SI_13589_SGHRERP2CEERP_Z00HRJGJJREVFI

inbound:RFC

具体参数如下:

 

类型:outbound

模式:同步

消息类型:MT

激活SI

6.      创建Imported Archives

按照字段映射写好xml文档,循环取输入出结构拼入RFC的导入导出参数中。具体如下:

 

创建IA,并导入以上4个xsl文档,激活

7.      创建 Operation Mappings

分别指定发出方接口、接收方接口。

发出方:SI_13589_SGHRERP2CEERP_Z00HRJGJJREVFI

接收方:Z00HRJ_GJJ_REV_FI

外围系统作为发出方,数据链路显示需先经过ESB通道才会到达PI,同样ERP返回消息时由PI到外围同样需经过ESB。经过ESB的数据均需使用<![CDATA[….]]>进行封装,故在PI内需进行转换。将ESB发送进来的cdata转成xml在进行接口间字段映射,返回时先进性接口间字段映射后将其封装成cdata。

 

 

B.     配置IB(Integration Builder)

 

1.      创建Configuration Scenario

创建场景,将各个组件添加到场景中。

 

2.      添加Business System

3.      创建发送方Communication Channel,对象BS_SGHRERP

4.      创建Sender Agreement

 

5.      创建Receiver Determination

RD用于确认接收方系统

6.      创建Interface Determination

ID用于确认接收方系统的接收接口

7.      创建接收方Communication Channel,对象PD1CLNT201

 

8.      创建Receiver Agreement

9.      一步一激活,最后激活CC

 

10.  导出wsdl

点击望远镜, 按照如下格式修改URL并填入

http://10.1.169.34:50000/XISOAPAdapter/MessageServlet?channel=:BS_SGHRERP: CC_13589_SGHRERP2CEERP_Z00HRJGJJREVFI_OU

 

选择对应接口SI_13589_SGHRERP2CEERP_Z00HRJGJJREVFI

 

填写CC:BS_SGHRERP

11.  RFC逻辑实现

转载自:https://www.cnblogs.com/BruceKing/p/11341172.html

posted @ 2026-04-29 14:12  萧静默  阅读(122)  评论(0)    收藏  举报