头图

笔者之前的公众号文章,超过 60% 的内容都是在介绍 SAP ABAP.

SAP ABAP 平台是用于 SAP ECC、SAP S/4HANA 和 SAP BTP 等产品的技术平台,也是 ABAP 应用程序的开发和运行环境。

ABAP 平台分为 2 种类型:

  • 基于 ABAP Cloud 的 ABAP 平台,用于在 SAP S/4HANA Cloud 或 SAP BTP 中构建和扩展「云解决方案」
  • 基于传统 ABAP 的 ABAP 平台,用于在 SAP S/4HANA 和 SAP ECC 中构建和扩展「本地解决方案」

SAP ABAP Cloud 随以下 SAP 标准产品一起交付:

  • SAP BTP ABAP 环境
  • SAP S/4HANA Cloud, Public 版本
  • SAP S/4HANA Cloud, Private 版本( 2022 及其之后的版本)

ABAP 有 2 个语言版本:

  • 标准 ABAP
  • 用于云开发的 ABAP

其中用于云开发的 ABAP,官方术语是 「ABAP in the Cloud」,本文后续叙述方便起见,简称为 「ABAP Cloud」. 它涵盖了标准 ABAP 语言范围的一个子集,只能访问受限的 API,用于构建 SAP BTP ABAP 环境以及 SAP S/4HANA Cloud ABAP 环境上的云解决方案。

ABAP in the Cloud 无法访问 SAP GUI,只能使用基于 Eclipse 的 ABAP Development Tool(ADT)进行开发。

ABAP Cloud 的主要构成部分:

  • ABAP Core Data Services(CDS)用于数据模型构建和分析。
  • ABAP RESTful Application Programming Model (RAP)作为构建应用程序和服务的事务型编程模型(Transactional Programming Model)。
  • 为云环境优化过的 ABAP 编程语言的子集,用于编写业务逻辑。
  • 强制性的公共 SAP API 和 Extension Points 白名单,支持自动化的云端运维(Automated Cloud Operations)和生命周期稳定的可扩展性。

这些构成部分均在下面这本 SAP 官方著作里有所介绍。

而标准 ABAP 则是最为国内 ABAP 从业人员熟知的版本,这个版本涵盖了 ABAP 的全部语言范围,用于 SAP ERP,SAP Business Suite 和 SAP S/4HANA On-Premise 版本。

笔者于 2007 年加入 SAP,也算是见证了 ABAP Cloud 从无到有的一步步历史演进的全过程。

我记得早在 2012 年时,我刚刚经历了从 SAP Business By Design 转向 SAP CRM 开发的工作调动,当时 SAP 内部主要有 ABAP 和 Java 两大开发技术栈,ABAP 开发团队清一色的 SAPGUI 作为开发环境,但当时 SAP 内部已经开始了所谓 ABAP in Eclipse 开发工具的 Roll-out, 我也算是最早一批尝试这个新工具的开发人员之一。

引入基于 Eclipse 的 ABAP 开发工具,作为现代 IDE 和 ABAP Workbench(SE80)的替代品,从后面的发展来看,算是 ABAP 向云端迈进的第一步。

从数据模型的角度来看,2015 年发布的 SAP S/4HANA,引入了 Core Data Services(CDS)来定义和消费语义丰富的数据模型。随着 CDS 的成功,SAP 将其确立为实现特定领域(Domain Specific)的事务性、分析性以及集成用例服务和应用程序的基础。这意味着 CDS 不再是 ABAP 环境的专属概念,实际上它在 SAP 随后几年发布的 Cloud Application Programming(CAP)模型中也扮演着 Universal Modeling Language 即统一建模语言的角色。

2017 年,SAP 发布了 RESTful Application Programming Model,用于支持事务性服务和应用程序的端到端开发过程。

2018 年,SAP 推出 SAP BTP ABAP 编程环境,引入了云开发 ABAP 语言版本,使得 ABAP 首次从编程语言上原生支持云范式。这使得 ABAP 开发人员能够在一个纯云的环境中,利用 ABAP 云端范式进行应用程序开发。

ABAP Cloud 随后被引入到 SAP S/4HANA Cloud 「Public Edition」,作为产品 Extensibility 的一部分,使得开发者能够在其 SAP S/4HANA Cloud ABAP 环境中进行开发和扩展工作。

随着 SAP S/4HANA 2022 SP00 的发布,ABAP Cloud 和开发者可扩展性也作为 SAP S/4HANA 和 SAP S/4HANA Cloud 「Private Edition」的开发替代方案。

2022 年的 SAP TechEd 上,SAP CTO Juergen Mueller 正式将 ABAP Cloud 作为一个概念的统称,涵盖了过去几年围绕 ABAP 做出的所有创新,用于定义现代和 Cloud Ready 的 ABAP 开发领域的一套标准技术规范和最佳实践。


更多阅读


注销
1k 声望1.6k 粉丝

invalid