CDS Views
Inhaltsverzeichnis
Was sind Core Data Services (CDS)?
Core Data Services (CDS) stellen die zentrale Technologie dar, um Daten im SAP-System zu modellieren. Damit sind sie ein wichtiger Bestandteil im modernen Programmiermodell der ABAP-Plattform. Aber auch moderne Fiori-Anwendungen mit OData-Services bauen auf den Core Data Services auf. Weil das sogenannte „virtuelle Datenmodell“ des neuen ERP-Systems ebenfalls vollständig auf Core Data Services basiert, ist das Thema für alle Unternehmen, die einen Wechsel auf S/4HANA planen, elementar.
CDS Views stellen Nutzenden Informationen mit Hilfe neuer Datenbanktechniken zur Verfügung, damit sie noch mehr Möglichkeiten für die Datenmodellierung erhalten. So stellen sie eine Weiterentwicklung der klassischen Datenbank-View dar.
HANA CDS Views vs. ABAP CDS Views
Bei CDS Views können Sie zudem zwischen HANA CDS Views und ABAP CDS Views entscheiden.
HANA CDS Views definieren Datenmodelle auf der HANA-Datenbank-Ebene. Hier werden die Views in DDL-Dateien (Data Definition Language) administriert und gespeichert. Für HANA CDS Views wird SQL genutzt.
ABAP CDS Views wiederum nutzen Sie für „normale“ Daten, die nicht auf der HANA-Datenbank-Ebene liegen. Zuerst wurde diese Art von CDS Views in ABAP eingeführt, damit Nutzende sie für ein System außerhalb der HANA-Datenbank nutzen können. Hier wird OpenSQL anstelle von SQL genutzt.
Aufbau der virtuellen Programmiermodelle
CDS sind mit der NetWeaver-Version 7.40 eingeführt worden und werden seitdem stetig weiterentwickelt. Sie basieren auf der Datenbanksprache SQL und können über den SqlDataAdapter auf jeder unterstützten SQL-Datenbank betrieben werden.
Die Architektur lässt sich in mehrere Schichten unterteilen: Auf Datenbank-Ebene werden Daten in Datenbanktabellen persistent gespeichert. In der darüberliegenden Applikations-Schicht befinden sich die CDS-Objekte, die über ABAP-Anweisungen aufgerufen werden. Der SqlDataAdapter übersetzt dann die Anweisungen für die entsprechende SQL-Datenbank.
Voraussetzung für die Implementierung
Damit Sie die CDS Views nutzen zu können, ist eine HANA-Datenbank nicht zwingend erforderlich – für eine möglichst effektive Nutzung empfiehlt SAP diese jedoch. Unternehmen müssen zudem mindestens über die NetWeaver Version 7.40 oder ein SAP-S/4HANA-System verfügen.
Vorteile von CDS Views
CDS Views sind eine Kerntechnologie von SAP S/4HANA und erweitern die Möglichkeiten der Datenmodellierung. Die Nutzung von dieser Technologie gibt Unternehmen folgende Vorteile:
Performancesteigerung
Da die Rechenoperationen in einem CDS View auf die HANA Datenbank verschoben wird, wird die Bearbeitungsstärke auf die In-Memory-Datenbank verlagert. Dies führt dazu, dass Sie von einer großen Performancesteigerung profitieren können.
Größere Datenmodellierungs-Möglichkeiten
CDS Views haben den Vorteil, dass sie programmierbar sind. Dies bedeutet, dass Sie viele unterschiedliche Möglichkeiten bei der Datenmodellierung haben – Sie können u. a. einfach Tabellen zusammenführen.
Zeitersparnis Fiori-App-Entwicklung
Wenn Sie Fiori-Anwendungen entwickeln wollen, erhalten Sie mit CDS Views eine große Zeitersparnis.
S/4HANA-Datenmodell-Erweiterungen
Weil die Views virtuelle Objekte sind, können Sie Felder bzw. Informationen dem S/4HANA-Datenmodell schnell und einfach hinzufügen, wodurch Sie mehr Möglichkeiten haben.
Einsatzgebiete von CDS Views
Neben der Modellierung des Datenmodells können Core Data Services auch dafür genutzt werden, den gesamten Technologie-Stack zu modellieren. So lassen sich über Annotationen aufbauende OData-Services und Fiori Smart Templates (auch Fiori Elements genannt) modellieren und automatisch generieren.
Einsatz im Fiori User Interface
Im Fiori User Interface führen Sie Aktionen aus, die OData-Calls bewirken.
Neue CDS-Elemente, z. B. Views, werden auf der Datenbank als DDL (Data Definition Language) gespeichert. Dahinter befindet sich die Native SQL.
Damit Sie in der Applikationsebene mit ABAP und den CDS Views arbeiten können, z. B. zur Typisierung von Variablen, wird für jede CDS View auch eine ABAP DDIC View (ABAP Data Dictionary View) angelegt. Diese nennt man dann auch ABAP CDS Views. Innerhalb der bereits bekannten ABAP-Programmierung ändert sich kaum etwas.
CDS Views ermöglichen aber auch die Verlagerung vieler neuer Berechnungen von der Applikations- auf die Datenbank-Schicht. Beispiele hierfür sind:
- CAST von Datentypen
- CASE-Anweisungen, z. B. für Mapping
- Parameter und Sitzungsvariablen
- Assoziationen statt SQL JOINS
- Zugriffskontrolle
- Konvertierung von Währungen und Mengen
- Freies Programmieren von eigenen Funktionen über SQLScript
Mit CDS-Annotationen automatisch Fiori-Apps generieren
CDS-Annotationen sind ein integraler Bestandteil der modernen Datenmodellierung. Sie reichern CDS-Objekte mit weiteren Metadaten an. Programmierende können eigene Annotationen definieren und auslesen.
Die Anwendungsbereiche erstrecken sich von der Dokumentation über die Erweiterungen der technischen Möglichkeiten zur Datenmodellierung bis hin zur Anreicherung von Metadaten für Frameworks – auf diese Weise können Sie aus den Core Data Services heraus vollfunktionsfähige Fiori-Apps automatisch generieren, ohne eine Zeile Code zu schreiben.
Verschiedene Typen von CDS Views
SAP S/4HANA verwendet das „virtuelle Datenmodell“, das vollständig aus mehrschichtigen CDS Views besteht. Diese sind nach einem festen Regelwerk aufgebaut, sodass diese eine wiederverwendbare, klar verständliche Syntax und Architektur liefern und deutlich optimierte Datenbankabfragen ermöglichen.
Man unterscheidet zwischen die folgenden CDS-View-Typen:
Basic-Interface-Views
Dieser Typ greift direkt auf die Datenbank zu und bildet die zentralen Entitäten im SAP-Umfeld. Ggfs. werden über Assoziationen mehrere Basic-Interface-Views verknüpft, um Entitäten abzubilden. Basic-Interface-Views sind für die Wiederverwendung gedacht und durch die Annotation „@VDM.ViewType: #BASIC“ gekennzeichnet. Zwischen den einzelnen Views existieren zudem Zusammenhänge.
Composite-Interface-Views
Composite-Interface-Views basieren auf Basic-Interface-Views und bilden neue Entitäten über deren Zusammenhänge ab. Diese werden durch die Annotation „@VDM.ViewType: #COMPOSITE“ gekennzeichnet. Composite-Interface-Views sind ebenfalls für die Wiederverwendung gedacht, allerdings sind sie nicht so durchsichtig wie Basic-Interface-Views.
Consumption-Views
Consumption-Views werden durch die Annotation „@VDM.ViewType: #CONSUMPTION“ gekennzeichnet und in transaktionalen Servicemodellen verwendet. Sie stellen genau die Daten zur Verfügung, die Sie für eine App brauchen. Jedoch sind diese nicht für die Wiederverwendung geeignet.
Private-View
Hierbei handelt es sich um eine Hilfsview, die Entwickelnde bei der Definition der eigentlichen VDM-Views unterstützt.
Extension-Include-View
Die Extension-Include-View ist die unterste Schicht für Erweiterungsfelder an eine SAP-DB-Tabelle.
Die modellgetriebene Programmierung durch die ABAP Core Data Services (ABAP CDS) hat sich zu einem zentralen Bestandteil des S/4HANA-Technologiestacks entwickelt und bietet neue innovative Möglichkeiten der Anwendungsentwicklung. In dieser Schulung beleuchten wir die verschiedenen Bestandteile & Potenziale dieser Technologie und machen Ihr Entwicklerteam fit fürs Betreiben und Erweitern Ihres S/4HANA-Systems.
Fazit
Bei der Entwicklung mit Core Data Services stellen Ihnen CDS Views Informationen schneller, einfacher und mit deutlich mehr Möglichkeiten zur Verfügung. Somit haben sie einen einfachen Zugriff auf zusammenhängende Informationen und können diese für Ihre Entwicklungsprojekte nutzen.
Über Annotationen können Sie CDS-Objekte mit weiteren Metadaten anreichern. Ihre Anwendungsbereiche erstrecken sich von der Dokumentation über die Erweiterungen der technischen Möglichkeiten zur Datenmodellierung bis hin zur Anreicherung von Metadaten für Frameworks – Entwickelnde können Annotationen selbst anfertigen und Fiori-Apps automatisch aus den Core Data Services generieren lassen.
Man unterscheidet zwischen folgenden verschiedenen Typen: Mit den Basic-Interface-Views werden grundlegende Entitäten modelliert und sie sind auch für die Wiederverwendung geeignet. Composite-Interface-Views basieren auf den Basic-Interface-Views und erzeugen neue Datenmodelle – auch diese können Sie wiederverwenden. Consumption-Views dagegen sind nicht für die Wiederverwendung geeignet, da sie einer App genau die Daten zur Verfügung stellen, die sie benötigt.
Insgesamt profitieren Sie u. a. von einer Performance-Steigerung, einer Zeitersparnis bei der Fiori-App-Entwicklung und einer leichten Erweiterung des S/4HANA-Datenmodells.
Websession: CDS Views
Haben Sie Fragen rund um das Thema CDS Views? Dann kontaktieren Sie uns einfach. Wir helfen Ihnen bei Ihren Fragen gerne weiter.
FAQ
Was sind CDS Views?
CDS Views (Core Data Services) sind vordefinierte, virtuelle Programmiermodelle, die die Entwicklung für Nutzende vereinfachen sollen. Entwickelnde können mit diesen nämlich einfach und schnell auf Informationen zugreifen und erhalten somit viele zusammenhängende Informationen direkt.
Welche Typen von CDS Views gibt es?
CDS Views werden in folgende Typen unterteilt:
- Basic-Interface-Views
- Composite-Interface-Views
- Consumption-Views
- Private Views
- Extension-Include Views
Was sind Vorteile von CDS Views?
Die Nutzung bringt Entwickelnden eine Vielzahl an unterschiedlichen Vorteilen. Diese wären:
- Performancesteigerung
- Größere Datenmodellierungs-Möglichkeiten
- Zeitersparnis bei der Fiori-App-Entwicklung
- Viele S/4HANA-Datenmodell-Erweiterungen