ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

SAP ABAP CDS Metadata Extensions 深度解析,从 Annotation 解耦到 Clean Core 的元数据扩展机制

SAP ABAP CDS Metadata Extensions 深度解析,从 Annotation 解耦到 Clean Core 的元数据扩展机制 一个 CDS View 刚开始开发时,源代码通常还很清爽。数据源、Association、字段列表,再加少量 Annotation,整个模型的职责一眼就能看明白。但当这个 CDS Entity 开始被 SAP Fiori Elements、OData、分析应用以及各种消费端使用之后,情况很快就会发生变化。一个字段需要显示在 List Report 中,需要一个@UI.lineItem。另一个字段需要进入筛选栏,需要@UI.selectionField。Object Page 里还需要@UI.identification、@UI.fieldGroup、@UI.facet。为了让界面文字更友好,又可能加入@EndUserText.label。再往后,项目实施团队可能还会提出自己的 UI 排列方式,而 SAP 标准内容本身也可能已经提供了一套 Annotation。这时候,一个原本负责表达数据模型的 CDS Entity,很容易变成数据建模逻辑和几十甚至上百行 UI 元数据混在一起的大文件。SAP 为这个问题提供了一套非常重要的机制,也就是 Metadata Extensions,通常简称为 MDE。Metadata Extension 是一种独立的 CDS Repository Object,它允许我们不修改 CDS Entity 的 Data Definition,而是在另外一个对象中给这个 CDS Entity 添加或者覆盖 Annotation。现代 ABAP CDS 使用annotate entity
返回列表