一、      文档信息

版本号*

更新日期*

姓名*

更新内容及更新理由*

备注*

V1.0

2019/02/19

fanjb

文档创建

以福利接口13589(Z00HRJ_GJJ_REV_FI)为例,外围系统调用集中部署ERP

V1.1

2019/04/04

fanjb

文档修正

格式调整

二、      接口内容

1.      接口详细信息

接口编号

13589

接口功能描述

测试:二级ERP财务系统发送过账信息到集中部署

发送方

财务网省ERP系统

发送方接口名称*

SI_13589_SGHRERP2CEERP_Z00HRJGJJREVFI

接收方

集中部署ERP系统

接收方接口名称*

RFC:Z00HRJ_GJJ_REV_FI

交互模式

同步

触发机制

实时/按需/定时作业

后台作业名称

作业频率

发生频度

每日

集成方式

PI+ESB

接口类型

RFC

技术链路

财务网省ERP系统-总部ESB-PI-集中部署ERP系统

服务提供方

集中部署ERP系统

备注

填写需要强调的重要信息

1.1                  传入报文(外围系统提供)

T_ Z00HR_GJJ_ACCOUNT_BACK XML格式:

<?xml version="1.0" encoding="UTF-8"?>

  <Document>

    <Item>

      <ZPAYMENTID>缴费申请号</ZPAYMENTID>

      <ZFIGRJCE>财务实缴个人缴存额</ZFIGRJCE>

      <ZFIDWJCE>财务实缴单位缴存额</ZFIDWJCE>

      <ZDATE>传输日期</ZDATE>

      <ZTIME>传输时间</ZTIME>

      <ZESTIMATEDTIME>计提时间</ZESTIMATEDTIME>

      <ZWITHDRAWAVOUCHER>计提凭证</ZWITHDRAWAVOUCHER>

      <ZPAYMENTTIME>支付时间</ZPAYMENTTIME>

      <ZPAYMENTVOUCHER>支付凭证</ZPAYMENTVOUCHER>

      <ZAPPROVALSTATUS>审批状态</ZAPPROVALSTATUS>

      <ZPAYMENTSTATUS>支付状态</ZPAYMENTSTATUS>

      <ZERROR>错误消息</ZERROR>

      <Z00HRJBY1></Z00HRJBY1>

      <Z00HRJBY2></Z00HRJBY2>

    </ITEM>

  </Document>

1.2                  返回报文(外围系统提供)

T_OUTPUT XML格式:

<?xml version="1.0" encoding="UTF-8"?>

  <Document>

    <Item>

      <ZPAYMENTID>缴费申请号</ZPAYMENTID>

      <ZSTATE>反馈状态</ZSTATE>

      <ZMASSAGE>错误消息</ZMASSAGE>

      </ITEM>

  </Document>

三、      接口配置

登陆网址:http://sgnwpid.sgcc.com.cn:50000/dir/start/index.jsp

事物码登陆:SXMB_IFR

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逻辑实现

10-PI开发手册-ERP发布服务供外围系统调用(RFC类型)的更多相关文章

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

    1转自:https://www.cnblogs.com/fanjb/p/10677018.html 8年进入国网项目后陆陆续续做了一些接口,按实现方法去分有RFC和代理类sproxy类型,按服务提供方 ...

  2. SAP PI开发手册-ERP发布服务供外部系统调用(sproxy代理类)

    转自:https://www.cnblogs.com/fanjb/p/10829858.html 一.      接口内容 接口详细信息 1.  字段对应关系 发送字段对应关系 返回字段对应关系 2. ...

  3. 20-SAP PI开发手册-ERP发布服务供外部系统调用(sproxy代理类)

    一.      接口内容 接口详细信息 1.  字段对应关系 发送字段对应关系 返回字段对应关系 2.  报文信息 传入报文(报文结构,外围系统提供) 1 <?xml version=" ...

  4. 为什么阿里巴巴开发手册中强制要求 POJO 类使用包装类型?NPE问题防范

    封面:学校内的秋天 背景:写这个的原因,也是我这两天凑巧看到的,虽然我一直有 alibaba Java 开发手册,也看过不少次,但是一直没有注意过这个问题 属于那种看过,但又没完全看过 一起来看看吧冲 ...

  5. 阿里巴巴Java开发手册更新了!

    自2017年,<阿里巴巴Java开发手册>发布,现已有超过260万位工程师下载及查阅手册,在数以千计的企业应用,手册成为受业界认可的开发规范. 昨天,<Java开发手册>再次更 ...

  6. 重磅发布:《阿里巴巴Android开发手册(规约)》

    1.前言 阿里巴巴于近日为广大程序员再送上重磅开春好礼:<阿里巴巴Android开发手册(规约)>.该开发规范在阿里内部经过了长期的修缮,现已总结成册,向所有移动开发者.技术爱好者开放,希 ...

  7. 在线教学、视频会议 Webus Fox(2) 服务端开发手册

    上次在<在线教学.视频会议软件 Webus Fox(1)文本.语音.视频聊天及电子白板基本用法>里介绍了软件的基本用法.本文主要介绍服务器端如何配置.开发. 1. 配置 1.1 IIS配置 ...

  8. ARCGIS 10.1 发布服务问题以及注意事项汇总

    本文会逐渐丰富,并在遇到问题后进行整理进来. 一.了解ArcGIS Server以及如何利用ArcServer发布服务 官方中文帮助文档:http://resources.arcgis.com/zh- ...

  9. ArcGIS Engine 10.2 如何发布服务

    http://blog.csdn.net/arcgis_all/article/details/17376397 1 ArcGIS Engine 10.2 如何发布服务 ArcGIS Engine的代 ...

随机推荐

  1. 解决Linux启动redis时出现提示权限不够问题

    如果权限不够请使用一条命令 chmod 777  操作 参考:https://blog.csdn.net/zczzsq/article/details/8162339

  2. 又拍云张聪:OpenResty 动态流控的几种姿势

    2019 年 1 月 12 日,由又拍云.OpenResty 中国社区主办的 OpenResty × Open Talk 全国巡回沙龙·深圳站圆满结束,又拍云首席架构师张聪在活动上做了< Ope ...

  3. springcloud~Eureka实例搭建

    服务端 build.gradle配置 dependencies { compile('org.springframework.cloud:spring-cloud-starter-netflix-eu ...

  4. C++11 (多线程)并发编程总结

    | 线程 std::thread 创建std::thread,一般会绑定一个底层的线程.若该thread还绑定好函数对象,则即刻将该函数运行于thread的底层线程. 线程相关的很多默认是move语义 ...

  5. SmartCode 正式开源,不只是代码生成器!

    SmartCode(https://github.com/Ahoo-Wang/SmartCode) SmartCode = IDataSource -> IBuildTask -> IOu ...

  6. windows系统dokuwiki安装部署设置 xampp环境配置

    简单记录一次安装dokuwiki的过程 dokuwiki下载 dokuwiki下载地址 https://download.dokuwiki.org/ 下载前有一些可选项目,版本.语言.插件,可以按照需 ...

  7. 从PRISM开始学WPF(三)Prism-Region-更新至Prism7.1

    [7.1update]在开始前,我们先看下版本7.1中在本实例中的改动. 首先,项目文件中没有了Bootstrapper.cs,在上一篇的末尾,我们说过了,在7.1中,不见推荐使用Bootstrapp ...

  8. .Net Core 根据配置文件动态发布至服务器

    前言 一个软件的开发周期需要经历开发.测试.上线三个基本的阶段,同理我们在开发过程中会需要经常切换不同的运行环境..NetCore可以通过配置文件以及写入系统环境变量来自动识别站点的运行环境,保证了数 ...

  9. Eureka配置instanceId显示IP

    直接配置: eureka: client: serviceUrl: defaultZone: http://localhost:8761/eureka/ instance: prefer-ip-add ...

  10. PHP设计模式的六大设计原则

    PHP设计模式的六大设计原则 1 简介 软件设计最大的难题就是应对需求的变化,但是纷繁复杂的需求变化却是不可预料的.此时,我们可以通过六大设计原则良好的应对未来的变化. 2 讲解 2.1 单一职责原则 ...