Core Data Services (CDS)

  1. CDS Dateitypen
  2. Ermittlung der Eigenschaften von Core Data Services
  3. Element Info für CDS
  4. Dependency Analyzer
  5. Active Annotations View

CDS Dateitypen

Im Bereich der Core Data Services (CDS) gibt es unterschiedliche Dateitypen, die in den ADT angelegt werden können:

  • Data Definitions (DDLS) - Quelltextdateien für Datenmodelle in den folgenden Varianten:
  • Access-Control-Dateien (DCLS) - Zugriffs-Definitionen
  • Metadata Extensions (DDLX) - Auslagerung von Annotationen aus der CDS-Definition
  • Behavior Definitions (BDEF) - Verhaltens-Definitionen für RAP-Business-Objekte

CDS Objekttypen

Objekttypen der CDS in der Navigation

In den Data Definitions können unterschiedliche Statements / Entitätstypen enthalten sein. Diese werden “Source Types” genannt. Diese sind z.B.:

  • DDIC Based CDS Views
  • CDS View Entities
  • Abstrakte CDS-Entitäten
  • Hierarchien
  • Erweiterungen der Views
  • CDS Table Functions

Diese Liste ist nicht vollständig und ist abhängig vom Release des Backends. Seit ADT Version 3.32 in Verbindung mit den Backend Versionen “SAP BTP ABAP environment 2302” bzw “SAP S/4HANA Cloud ABAP Environment 2302” wird der Source Type einer Data Defintion in ADT transparenter dargestellt. Man kann den Source Type:

  • Im “Properties” view sehen
  • Beim Suchen (z.B. im “Open ABAP Development Object” Dialog) als Suchkriterium mitgeben
  • Im “Project Explorer” den “Data Definitions” Knoten ad-hoc nach “Source Type” expandieren
  • Im “Project Explorer” eigene “Repository Trees” mit Hilfe der “Source Type” Facette definieren.

Mehr Details zur Anzeige des Source Types finden Sie in den SAP ADT Release Notes.

Die Quelltext Editoren für die unterschiedlichen Dateitypen der Core Data Services verhalten sich weitgehend wie der Quelltexteditor für ABAP-Code. Unter anderem sind folgende Features enthalten:

  • Code Completion (Strg+Space) - Vorschlagswerte, die im Kontext passen.
  • Element Info (F2) - Informationen über das Element, auf dem der Cursor steht.
  • Pretty Printer (Shift+F1)

Ein Unterschied sind die Farben, die im Editor verwendet werden.

Ermittlung der Eigenschaften von Core Data Services

Bei den Core Data Services befinden sich die Eigenschaften eines Objekts nicht an einer zentralen Stelle, sondern sind aus mehreren Dateien und den Eigenschaften der Datenquellen zusammengesetzt (s. Abbildung). Diese Dateien erklären jeweils ihre Zugehörigkeit und die Datenquellen propagieren ihre Feldeigenschaften (Annotationen). Das ist für das Erweiterungskonzept sehr praktisch. Darunter kann aber die Transparenz leiden, da die Dateien nicht im selben Entwicklungspaket liegen müssen, sondern sich in verschiedenen Paketen befinden können.

CDS Eigenschaften

Unterschiedliche Dateien legen die Eigenschaften einer CDS View Entity fest

Um ein vollständiges Bild eines CDS-Objektes unter Berücksichtigung aller Dateien und Propagationen zu bekommen, können folgende Views in ADT verwendet werden:

Element Info für CDS

Mit F2 oder der separaten Element Info View bekommen Sie für einen CDS View eine gute Übersicht über die Datenstruktur und Assoziationen, unabhängig davon, wo diese definiert wurden. Außerdem werden alle relevanten Erweiterungsdateien angezeigt.

Element Info für CDS

Übersicht über ein CDS View Entity mit Hilfe von Element Info

Dependency Analyzer

Der Dependency Analyzer bietet eine gute Übersicht über die Herkunft der Daten. Er wird über das Kontextmenü aufgerufen..

Dependency Analyzer

Aufruf des Dependency Analyzers über das Kontextmenü

Der Dependency Analyzer hat drei Tab-Reiter, die Informationen über eine View anzeigen:

  • Der SQL Dependency Tree zeigt die hierarchische Struktur in Tabellenform an

SQL Dependency Tree

SQL Dependency Tree

  • Der SQL Dependency Graph zeigt die gleichen Informationen grafisch an.

SQL Dependency Graph

SQL Dependency Graph

  • Der Tab-Reiter Complexity Metrics zeigt zusätzliche Informationen zur Gesamtkomplexität des CDS Views an, inklusive aller Quell-Views.

    Gerade bei Performance-Problemen lohnt hier ein Blick.

Complexity Metrics

Complexity Metrics

Active Annotations View

Die Active Annotations View wird ebenfalls über das Kontextmenü in der Navigation aufgerufen. In ihr werden die Werte sämtlicher aktiven Annotationen der Views angezeigt:

  • Auf View-Ebene sind nur genau die Annotationen sichtbar, die in dem View definiert wurden.
  • Auf Feld-Ebene sind alle gültigen Annotationen sichtbar. Ihre Herkunft, wie beispielsweise Datenelement, Metadata-Extension oder Datenquelle, wird ebenfalls mit angezeigt.
  • Auf Parameter-Ebene

Manche Eigenschaften, z. B. Feldtexte, können schon durch die Datenelemente festgelegt und diese dann in die View propagiert werden. Dies ist in folgender Abbildung beispielhaft dargestellt:

Aktive Annotationen eines Views

Aktive Annotationen eines Views


Data Preview Troubleshooting-Werkzeuge in Eclipse