
最近在整理 ABAP Cloud 和传统 ABAP On-Premise 项目里的数据建模规范时,我越来越明显地感觉到,CDS object 的创建已经不是一个单纯的语法问题。它更像是整个 SAP 后端开发的入口,一端连着 ABAP Repository、ABAP Dictionary、Transport Organizer,另一端连着 RAP business object、OData service、Fiori UI、权限控制和 Clean Core 扩展策略。很多代码质量问题,其实不是出现在行为定义或者 UI annotation 那一层,而是在最开始创建 data definition 的时候,就已经埋下了结构不清、边界不稳、语义不准的隐患。官方文档里对 data definition 的定位很直接,它是 ABAP Repository 里的可传输开发对象,用 ABAP CDS 的 DDL 语言定义或扩展 CDS entity,并且接入语法检查、激活、传输等标准 ABAP 开发能力。创建之后,后端会先生成一个 inactive version,开发人员在 CDS source code editor 里继续完善,激活后 CDS entity 才会在 ABAP Dictionary 中可用,并进入业务应用的消费链路。(