经典 ABAP 扩展能不能做到 Clean Core,答案藏在依赖边界里
Clean Core 不是把所有 Z 代码清空在 SAP S/4HANA 转型项目里,Clean Core 经常被误解成一句很吓人的话,所有自开发都要干掉,所有 classic ABAP 都是技术债,所有扩展都必须搬到 ABAP Cloud 或 SAP BTP。这个理解太粗糙,也容易把项目带偏。真正需要讨论的不是 classic ABAP 有没有原罪,而是我们的扩展是否还紧紧缠在 SAP 标准对象、内部表、隐式增强、未推荐技术和不可控修改上。SAP 官方现在已经把这个问题讲得更细了。ABAP Cloud 和 Cloud extensibility model 从 SAP S/4HANA 2022 开始,不只适用于 SAP S/4HANA Cloud, public edition,也可用于 SAP S/4HANA Cloud, private edition 和 on-premise。但 SAP 也明确承认,private edition 和 on-premise 客户通常不可能马上完全切到纯 ABAP Cloud 模型,因为大量业务仍依赖既有 classic custom ABAP code,而且某些广范围业务场景还没有足够完整的 public SAP APIs 和 extension points 来替代旧扩展。正因为如此,SAP 才提供了一种兼容现实的治理思路,让 classic ABAP 和 ABAP Cloud 在同一个系统中有序共存。(