企业系统真正进入集成阶段以后,经常会碰到这样一类需求,外部系统需要主动调用 SAP,在 SAP 里查询数据、提交业务单据、触发业务动作,或者读取一批用于分析的数据。这里的方向很关键。请求不是从 SAP 发出去,而是从外部系统进入 SAP。在 ABAP Cloud 的术语体系里,这类通信被称为 Inbound Communication。SAP 官方对它的定义非常直接,调用由外部系统发起,ABAP 系统接收请求,并作为服务提供方处理数据或业务请求。当前 ABAP Cloud 支持的入站通信能力包括 OData、HTTP、RFC,以及存在云端限制条件的 SOAP。对于不强调业务流程、主要面向数据读取、数据联邦或复制的场景,还可以使用 SQL Service。这件事情看起来只是把一个接口开放出去,真正落到 ABAP Cloud 架构里却明显不是简单地创建一个 URL。完整的设计至少存在两条彼此配合的链路。一条是开发链路,由开发人员实现真正处理请求的 Integration Service。另一条是通信管理链路,由开发人员定义 Communication Scenario,再由系统管理员建立 Communication System、Communication User 和 Communication Arrangement,把设计期的服务转换为真正可以运行的系统间通信配置。理解这两条链路,基本就抓住了 ABAP Cloud Inbound Communication 的核心。Integration Service 解决的并不是 URL