很多团队把扩展逻辑放到 SAP BTP 的 ABAP environment(也常被叫作 Steampunk)里:一方面可以更贴近 Clean Core,把扩展从核心系统里拆出去;另一方面也更利于做解耦、做多系统复用。可一旦扩展在云端跑起来,新的问题就会出现:核心系统(ABAP On-Premise)能不能把云端的服务再消费回来,让业务流程在原系统里继续走?
答案是可以,而且路径非常清晰:在 ABAP environment 侧发布一个可远程消费的 OData API,再通过 Inbound Communication 的一整套配置(Service Binding + Communication Scenario + Communication Arrangement)把认证、授权、可见范围管起来;最后在 On-Premise 用 SM59 建立 HTTPS Destination,用CL_HTTP_CLIENT=>CREATE_BY_DESTINATION走标准 HTTP 客户端调用,并把 OData V2 的 JSON 映射回 ABAP 内表即可。SAP 官方文档把 Inbound Communication 的概念与配置入口拆得很细,照着做基本不会迷路。(SAP Help Portal)
下面这篇文章按真实项目会落地的方式,把整条链路讲透,并补上生产化必备的安