做 SAP S/4HANA Cloud 扩展时,最容易被低估的一件事,不是某个语法能不能写,也不是某个表能不能直接读,而是我们依赖的 API 在系统升级之后还能不能稳定运行。一个接口今天能编译、能调用、能返回数据,并不等于它适合进入长期运行的生产系统。真正能支撑 Clean Core 的 API,必须在升级周期里保持对客户侧代码友好,不能因为 SAP 底层实现变了,就要求客户侧扩展反复改代码、重测流程、修复集成。
在 ABAP Cloud 的语境里,API 的 upgrade stability 可以理解为一种明确的兼容性承诺,API 对外暴露的签名不会发生从客户视角看不兼容的变化,也就是说,不会因为一次升级就强迫我们的调用方适配新的参数、返回类型、方法名称、字段结构或调用方式。SAP 底层实现当然可以演进,性能可以优化,内部类可以重构,数据库访问路径可以改变,甚至业务对象内部的事务处理也可以调整,但接口对外承诺的语义要保持一致。SAP 官方在 ABAP Cloud 文档里也把 released APIs 放在 upgrade safety 与 lifecycle stability 的核心位置,强调通过 SAP code 与 custom code 之间清晰分离,并通过稳定接口让客户代码在云端升级周期中保持稳定。(SAP Help Portal)
说到这里,很多做过传统