在 SAP S/4HANA 的实际开发里,数据库表几乎无处不在。销售订单、采购订单、物料、库存、会计凭证、业务配置以及我们自己开发的 RAP Business Object,最后都需要某种持久化机制保存业务数据。对于传统 ABAP 开发人员来说,SE11里的 Database Table 是每天都可能接触的对象,而进入 SAP BTP ABAP environment 和现代 ABAP Cloud 开发体系以后,同一类对象更多是在 ADT 里通过 Dictionary DDL 进行源代码化定义。这两个开发时代看起来差别很大,但底层概念其实没有发生根本变化。SAP 所说的 DDIC database table,是定义在 ABAP Dictionary 中,并且最终对应标准数据库中的物理数据库表。这里的 DDIC 就是 ABAP Dictionary。它并不单纯是一张 SAP GUI 页面里的字段列表,而是一套位于 ABAP Repository 中的数据库无关元数据。ABAP 系统根据这些元数据,再把表定义转换成当前数据库平台能够理解的物理数据库对象。SAP 官方文档也明确把 Dictionary DDL 定义为 ABAP Dictionary 的 Data Definition Language,它用于在 ADT 中描述由 ABAP 管理的数据库对象,其中就包括 DDIC structures、append structures、DDIC database tables 和 HANA tuning objects。Dictionary DDL 的语法体系与 ABAP CDS 的 CDS DDL 有明显的血缘关系,所以熟悉 CDS 的开发人员看到define table/
阅读完成 · 觉得有帮助?