在传统 ABAP 项目里,一提到 RFC 集成,很多开发人员脑中出现的画面往往是SE37、SM59、SU01和PFCG。开发人员创建一个 Remote-Enabled Function Module,Basis 团队维护 RFC Destination,再给技术用户分配几个角色,一个跨系统调用就跑起来了。到了 SAP BTP ABAP Environment、SAP S/4HANA Cloud Public Edition,以及采用 ABAP Cloud 开发模型的新一代 SAP S/4HANA 场景里,这套思路发生了很明显的变化。一个函数模块即使已经被设置成 Remote Enabled,也并不等于它已经成为一个可以被外部系统直接消费的正式接口。开发侧还需要明确声明哪些服务允许暴露、哪些业务权限允许通过这个接口获得、这个接口属于什么集成场景。管理员再基于这份声明建立实际的通信伙伴、认证身份和运行期连接。承担这个桥梁作用的,就是 SAP Communication Management。SAP 官方对入站通信的定义很直接,调用请求从外部系统发起,由 ABAP 系统负责接收和处理。在 ABAP Environment 中,入站通信可以采用 OData、HTTP、RFC 等协议。对于 RFC,开发人员可以基于 Remote-Enabled Function Module 创建服务,再通过 Communication Scenario 把它纳入正式的入站通信范围。这套机制真正解决的并不是 RFC 能不能调用的问题,而是另一个企业系统里更关键的问题,一个接口究竟由谁设计、由谁开放
阅读完成 · 觉得有帮助?