• 2022.9.1 SAP RFC


    概述

    什么是RFC
    RFC是SAP系统和其他系统间一个重要而常用的双向接口技术,也被视为SAP与外部通信的基本协议。
    简单地说,RFC过程就是系统调用当前系统外的程序模块,从而实现某个功能,而且调用系统和被调用系统中至少有一个SAP ABAP系统。这种远程功能调用也可在同一系统内部进行(如本地SAP系统内的远程调用);但通常情况下,调用恒旭和被调用程序处于不同的系统
    RFC 是 “REMOTE Function Call” 的简写 ,即为 “远程调用函数”。
    RFC不仅是一个函数,也是一个数据通信协议,与外部程序调用。

    RFC调用过程

    	在系统间通信过程中,需区分发送系统和接受系统。RFC调用请求从发送系统(调用系统)中传至接受系统(被调用系统,也称远程系统或者目标系统),发送请求的系统在通信过程中又称为RFC客户端,通信另一方则称为RFC服务器。RFC客户端发起远程功能调用以执行RFC服务器提供的功能。
    	其中,调用系统和被调用系统均可以是SAP系统和非SAP系统,此外还可以在SAP系统内部将特定应用服务器指定为目标系统。
    
    • 1
    • 2

    RFC接口系统

    SAP调用远程功能的能力是通过RFC接口系统实现的,根据调用方向的不同(SAP系统调用其他模块或其他系统调用SAP模块),RFC接口提供以下两种服务
    1.  ABAP程序的调用接口
    2. 非SAP ABAP程序的调用接口
    
    • 1
    • 2
    • 3

    典型应用

    1 MDM , 总部MDM做整个集团的主数据编码规划,通过XI + RFC 连接自动分发到各分散服务器

    2 BI 数据仓库系统通过RFC 从分散的 R/3 应用服务器中抽取数据,做报表分析和数据挖掘

    3 SLM(SoLution Management), SLM 通过RFC 连接各企业,在SLM 统一登录, R/3 那边设置号RFC 用户可自动登录,
    当然SLM 还提供了完善的问题处理流程跟踪。

    RFC通信模式

    同步通信和异步通信:同步通信时间上允许误差娇小,异步通信时间上允许一定的误差
    同步调用的优缺点:

    1. 优点: 可以及时将数据返还给发送系统
    2. 缺点: 系统对话时必须保证两个系统处于活动状态,否则对话出现中断,影响业务应用的处理。

    异步调用的优缺点:
    1.优点:不需要接收系统随时可用,如系统升级,维护等不影响请求发送系统的业务处理
    2.缺点:不适用于要求及时响应的处理过程。

    RFC通信方式

    根据 RFC 通信的情况,主要分为三种如下方式:
    1 两个独立的SAP系统之间进行通信。
    2 SAP作为调用系统,与外部远程系统(非SAP ABAP系统通信)
    3 外部系统作为调用系统,与SAP系统通信。

    SAP-RFC 几种模式

    1 sRFC(同步RFC,synchronous RFC) 是RFC的第一个版本,它要求连接的双方是同步的工作方式,即都是在可用状态才能够实现成功调用
    2 aRFC(异步RFC, asynchronous RFC) 这种RFC可以实现异步的RFC调用方式,它可以进行多个并发调用,并且不要求被调用系统的可用状态。发出调用系统会一致尝试知道获得被调用系统的应答。它通常用于当你需要提高系统并行调用多个RFC的效率,相对于强制等待程序的结果,它的效率更高。
    3 tRFC(事务RFC, transactional RFC)是对aRFC进行相关技术改进后的一个aRFC进行相关技术改进后的一个RFC版本,其于ARFC相同点是实现异步调用,其优点是可以将多个调用进行LUW分组处理,并只执行一次运行。现在aRFC基本上已经停用。
    4 qRFC(队列RFC, queue RFC) 是tRFC的一个增强版本,它保证了所传输数据的处理次序
    5 pRFC(并行RFC, Parallerl RFC)是一种特殊的RFC,它是aRFC的一种扩展类型。因为它改善了系统的性能,在执行大量的aRFC时。SAP使用它在MRP里面提高速度。但是它只能执行在同一个系统和同一个client里。

    五种RFC调用特性对比:

    在这里插入图片描述

    RFC连接方式

    RFC 目的地类型包括:
    R/2 连接
    R/3 连接
    对 SAP R/3系统的HTTP连接
    对外部服务器的HTTP连接
    互联网连接
    逻辑连接
    TCP/IP连接
    使用ABAP驱动程序的连接

    T- CODE : SM59, 可以在RFC端信息表RFCDES中维护RFC目的地

    RFC参数

    import(输入参数)即入参,对应导入
    就是要传入来的条件参数,不能作为内表。最常用。

    Export(输出参数): 对应导出
    就是返回值,也不能为内表。最常用。

    Tables(输入,输出内表) 对应表
    可以把多个内表的值传进来,同时也可以把多个内表返回

    Exceptions(排除参数)
    不常用。

    Source code(编写代码):对应源代码

    本地RFC创建

    在这里插入图片描述

    本地RFC创建

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

  • 相关阅读:
    【Linux】Linux项目自动化构建工具——make/Makefile
    一元三次方程求解
    【mysql】mysql复制原理
    Redis的缓存问题(四)将redis常用操作封装成工具类
    SpringCloud(十)——ElasticSearch简单了解(二)DSL查询语句及RestClient查询文档
    Kubernetes的容器批量调度引擎 Volcano
    css 利用 linear-gradient 实现条纹背景
    面试某大厂,被Channel给吊打了,这次一次性通关channel!
    【ES6】-- common.js与ES6模块化的差异
    连表查询数据,将数据分组串联到一起
  • 原文地址:https://blog.csdn.net/weixin_43847969/article/details/126641544