零基础 ABAP 学习教程系列文章的目录
- ABAP 标准培训教程 BC400 学习笔记之一:ABAP 服务器的架构和一个典型的 ABAP 程序结构介绍
- ABAP 标准培训教程 BC400 学习笔记之二:Cross-client 和 Client-specific 的区别
- ABAP 标准培训教程 BC400 学习笔记之三:ABAP 编程语言的特性和基本构成要素
- ABAP 标准培训教程 BC400 学习笔记之四:ABAP 编程语言的数据类型
- ABAP 标准培训教程 BC400 学习笔记之五:ABAP 编程语言的变量,常量和字面量,以及文本符号
ABAP 基础知识
- 通过实际的例子,介绍 SAP ABAP 里的 Repository Information System 的使用技巧
- ABAP function module 的使用
- ABAP subroutine 的定义和使用
- ABAP 中的变量和常量
- ABAP 编程语言中的系统字段(System Fields)
- 什么是 ABAP Field Symbol
- ABAP 引用类型介绍
- 最浅显易懂的 SAPGUI 里 ABAP 调试器的使用方法介绍
- 如何创建最简单的 ABAP 数据库表,以及编码从数据库表中读取数据 (上)
- 如何创建最简单的 ABAP 数据库表,以及编码从数据库表中读取数据 (下)
- 用 ABAP 读取本地文本文件内容
- 26 行 ABAP 代码使用 HTTP_GET 函数下载百度网站的首页数据
- ABAP 如何解析 JSON 数据
- 如何从本地文件里拷贝某个 ABAP 类到 SAP 系统
- 面向对象的 ABAP 编程初探 - 什么是类,实例,和 Public 方法
- SAP ABAP 报表的用户输入功能
- 使用 ABAP 事物码 SM59 创建 Destination 来读取外网的数据
- 通过一个具体的例子,讲解 SAP BDC 技术的使用步骤
- 从解读 BDC 自动生成的代码谈起,讲解 SAPGUI 的程序组成部分
- 如何查询 SAPGUI 屏幕上某个字段对应的数据库表存储
- 如何使用事物码 SAT 查找某个 SAPGUI 屏幕字段对应的后台存储数据库表的名称
- 一步步创建包含自定义 Screen 的 ABAP 程序的详细步骤
- SAP ABAP 字符串变量容易疏忽和混淆的一些知识点
- SAP ABAP 处理 Excel 的标准函数 TEXT_CONVERT_XLS_TO_SAP 介绍
- 授人以渔-在 SAP MM 物料显示界面上看到一个字段,如何查找哪张数据库表的哪个字段进行的存储
- SAP ABAP 系统进行数据库表查询的几种常用方法
- 如何让 ABAP 服务器能够响应通过浏览器发起的自定义 HTTP 请求
- 一个 15 年 SAP ABAP 开发人员分享的 SAPGUI 一些个性化设置和实用小技巧
- 如何使用 saplink 安装其他网站上提供的 ABAP 程序
- ABAP 报表中如何给报表的输入参数增添 F4 Value Help
- 35. ABAP 报表中如何以二进制方式上传本地文件
- 36. ABAP 里文件操作涉及到中文字符集的问题和解决方案
- 37. 如何对 ABAP 数据库表通过 ABAP 代码进行更新和删除操作
- 38. 如何让 ABAP 报表在后台作业的模式下运行
- 39. 如何使用 ABAP 代码解析 XML 文件
- 40. 如何使用 ABAP 代码发送邮件到指定邮箱
- 41. 如何使用 ABAP 代码发送带有 PDF 附件的电子邮件
- 50. 如何在 SAPGUI 里显示上传到 ABAP 服务器的 PDF 文件
- 51. 如何在 SAP ABAP 系统中使用 Adobe Form
- 52. 使用 SAP ABAP 代码生成 PDF 文件,填充以业务数据并显示在 SAPGUI 里
- 53. 如何把 SAP ABAP 系统里一张数据库表的内容,显示在 Adobe PDF Form 里
- 54. 使用 ABAP 代码制作手机能够扫描的二维码(QRCode)
- 55. ABAP 是一门支持面向过程和面向对象的混合型编程语言,实际开发中用哪种?
- 57. SAPGUI 里 F1 功能键的用法专题讲解
- 58. 通俗易懂的 SAP ABAP 会话管理(Session Management)概念讲解,包含具体的实例
- 59. 案例分析 - 如何通过 F1 和单步调试,找到 SE10 事物码里用户名字段的初始值填充逻辑
- 60. 如何通过 ABAP RFC 远程函数调用来跨系统消费远端服务器的 ABAP 函数
- 更多文章正在写作中
Office 专题
ALV 开发专题
- 27 行代码开发一个最简单的 SAP ALV 报表
- 48 行代码给 ABAP ALV 报表的数据行增添颜色效果
- 77 行代码实现ABAP ALV 中的双击事件处理
- SAP ABAP ALV 层次顺序表如何使用双表头(Multiple Headers)进行数据输出
- 48. 如何在 SAP ABAP ALV 报表里以交通灯的方式显示某一列的值
- 49. 在弹出对话框窗口里显示 SAP ABAP ALV 列表
- 56. 动手开发一个有用的 ABAP ALV 工具 - 查看指定用户的 ABAP 传输请求,模拟 SE10 事物码
在实际 SAP ABAP 项目开发中,在一个 ABAP 系统消费另一个 ABAP 系统的数据,是一个常见的实现需求,特别是在系统集成项目中更是如此。
理论上,实现这种跨系统间数据交换的场景,技术上有多种选择,比如 RFC(Remote Function Call,远程函数调用),OData,Web Service 等等。如果两个系统都是 SAP ABAP 系统,那么最简单高效的手段,当然就是本文标题的 RFC 调用。采用 RFC 调用,可以省去 OData 或者 Web Service 开发的步骤,在 ABAP 系统 A 直接能够调用 ABAP 系统 B 里实现的函数(Function Module)。
SAP 标准产品里也有不少采取 RFC 实现数据交换的案例,比如 SAP CRM 通过中间件(Middleware) 从 SAP ERP 读取数据,进行主数据同步(Master Data Exchange)。
本文我们就来介绍从 ABAP 系统 A 如何采取 RFC 直接调用 ABAP 系统 B 的函数。
在学习本步骤之前,请确保已经掌握了 ABAP Function Module 的基本用法:
7. ABAP function module 的使用
通过 RFC 实现跨 ABAP 系统间函数调用的示意图如下所示,下面我们通过一个具体的例子来讲解。
为了表述方便,本文余下部分,将发起 RFC 调用的 ABAP 系统 A,称之为 本地 ABAP 系统,将通过 RFC 实际执行 Function Module 的 ABAP 系统 B ,称之为 远端 ABAP 系统。
总结
本文通过一个实际的例子,介绍了如何在本地 ABAP 系统,通过 RFC 执行远端 ABAP 系统上的函数。在实际的 ABAP 系统间集成项目里,ABAP RFC 调用是使用得比较多的一种简单高效的数据交互手段。