This is a test message to test the length of the message box.
Login
ABAP CDS Virtuelles Datenmodell
Erstellt von Sotware-Heroes

CDS - Virtuelles Datenmodell

1486

Das virtuelle Datenmodell ist ein wichtiger Bestandteil der S/4 Landschaft und dient als Grundlage für Fiori Applikationen und Anwendungen innerhalb des Systems.

Werbung


Im letzten Artikel haben wir über die Grundlagen von Core Data Services gesprochen und die Vorteile eines virtuellen Datenmodells aufgezeigt. Dabei haben wir bereits über den Interface View gesprochen, ohne zu erklären was es eigentlich auf sich hat.

 

VDM

Das virtuelle Datenmodell, kurz VDM, ist eine abstrakte Schicht aus Views zwischen der Datenbank mit den einzelnen Tabellen und der Applikation, mit der der User arbeitet. Dazu eine kleine Übersicht bestehend aus drei Tabellen und zwei Applikationen und dem virtuellen Datenmodell dazwischen.

 

Dabei unterscheiden wir in die drei Schichten Interface, Composite und Consumption. Dazu in den folgenden Abschnitten mehr Informationen.

 

Interface

Beschreibt die unterste Schicht des VDM und befindet sich direkt über der Tabelle. Dabei bildet ein Interface-View genau eine Tabelle ab. Im Interface hast du die Möglichkeit die Feldnamen zu normalisieren und kurze Feldnamen in englische sprechende Namen zu überführen. In einem Interface View sollten alle Felder der Datenbank vorhanden sein, um als Grundlage für andere Views zu dienen.

CDS Views aus einem Standard System sind zum Beispiele:

  • I_CompanyCode (T001)

 

Composite

Der Composite View ist eine optionale Schicht im Datenmodell und muss nicht immer zwingend vorhanden sein. Vom Namen her kann man ihn auch mit Interface Views verwechseln. Composite Views führen meist mehrere Tabellen zusammen und stellen die Daten zur Verfügung. In dieser Schitt findet keine Normalisierung der Felder mehr statt, es werden Interface Views als Grundlage verwendet.

CDS Views aus einem Standard System sind zum Beispiele:

  • I_MDGovBPFltr (Business Partner Filter für MDG)

 

Consumption

Der Consumption View beschreibt die letzte Schicht des VDM und ist im Umfang meist auf genau eine Anwendung zugeschnitten. Die Felder sind entsprechend für die Anwendung eingeschränkt und nur benötigte Informationen werden der Anwendung zur Verfügung gestellt. Mögliche Aggregationen sind ebenfalls auf dieser Ebene aktiv, sodass sich eine Wiederverwendung für andere Anwendungen nur selten lohnt (Performance).

Auf dieser Ebene kann auch eine Integration mit BOPF erfolgen, um schreibenden Zugriff und weitere Funktionen für die App zur Verfügung zu stellen.

CDS Views aus einem Standard System sind zum Beispiele:

  • C_ServiceEntrySheetWD

 

CDS Navigator

Wie du oben unter den Beispiel CDS Views siehst, haben wir einmal die Definition der Abhängikeiten dargestellt. In Eclipse kannst du über den View "CDS Navigator" und die Funktion "Dependency Analyzer" Informationen zum Aufbau und der Komplexität des CDS Views erhalten. Von einer überschaubaren Ebene, kann es schnell zu vielen Abhängigkeiten kommen.

 

View Browser

Der View Browser (F2170) ist eine FIori App und gehört zu den Extensibility Tools. Mit Hilfe dieser App kann man die verschiedenen Ebenen von Views finden und bekommt auch den Freigabestatus geliefert. Die Suche funktioniert über Tabellenfelder, Tabellen oder andere CDS Views die vielleicht Abhängigkeiten haben.

 

Wenn du nicht weißt, ob es für eine Tabelle einen View gibt, dann kannst du über die App nach passenden Views suchen und das Ergebnis auf "Basic" Views einschränken.

 

Annotation

Die Views werden an Hand der Namenskonvention und der Inhalte von einander abgegrenzt, zur Wiederfindbarkeit und zum besseren Eindruck können die Views aber noch mit einer zusätzlichen Annotation ausgestattet werden. Die Annotation @VDM bietet verschiedene Werte zum Virtellen Datenmodell und damit kannst du deinen View einordnen.

@VDM.viewType: #CONSUMPTION

 

Fazit

Das virtuelle Datenmodell zu verstehen ist ein wichtiger Schritt die neue Datenarchitektur in einem S/4 System zu verstehen und wie Anwendungen aufgebaut sind. Die drei Schichten des Datenmodells wirst du in Zukunft immer wieder in Anwendungen finden, vor allem wenn sie mit RAP gebaut wurden.


Enthaltene Themen:
CDSCore Data ServiceVirtuelles DatenmodellVDM
Kommentare (0)



Und weiter ...

Bist du zufrieden mit dem Inhalt des Artikels? Wir posten jeden Freitag neuen Content im Bereich ABAP und unregelmäßig in allen anderen Bereichen. Schaue bei unseren Tools und Apps vorbei, diese stellen wir kostenlos zur Verfügung.


CDS - Migration der Views

Kategorie - ABAP

Du hast noch viele alte Core Data Services in deinem ABAP System? Zeit für die Migration zur neuen Entität.

15.11.2024

CDS - Typen und Enums

Kategorie - ABAP

Was wird im ABAP Dictionary die Datenelemente ablösen und wie kannst du schon heute die Typen für die Core Data Services verwenden? Mehr hier.

05.11.2024

ABAP in Praxis - String Verarbeitung

Kategorie - ABAP

In diesem praktischen Beispiel schauen wir uns die String Verarbeitung zur Ermittlung der CDS Namen in CamelCase an und wie du das mit ABAP umsetzen kannst.

15.10.2024

ABAP - CDS Extraktor

Kategorie - ABAP

Wie funktioniert der CDS Extraktor in ABAP und welche Herausforderungen gibt es bei der Entwicklung damit. In diesem Artikel schauen wir uns ein paar Details an.

20.09.2024

ABAP Tools - Arbeiten mit Eclipse (CDS Templates)

Kategorie - ABAP

Wieder das falsche CDS Template bei der Erstellung ausgewählt? Hier ein kleiner Tipp um nachträglich noch den View in ABAP zu korrigieren.

02.07.2024