Kontakt & Service
Jetzt Beratung vereinbaren

In wenigen Schritten einen Beratungs­termin mit unseren Experten buchen.

Anwender Helpdesk

Hilfestellung bei Problemen in Ihren SAP-Systemen.

Webinare

Unser Webinarangebot. Jetzt informieren!

Newsletter

Jetzt Newsletter abonnieren!

CDS-Views

News & Wissen SAP CDS-Views: Vorteile und Nutzen im Überblick

In einem SAP-System spielen Daten eine zentrale Rolle. Unternehmen sammeln, verwalten und analysieren riesige Mengen davon. Daher ist es unerlässlich, hierbei so effektiv wie möglich vorzugehen. SAP CDS-Views sind ein leistungsstarkes Werkzeug, das Sie dabei unterstützt, Daten effizient zu modellieren und zu verarbeiten. In diesem Artikel geben wir einen Überblick über SAP CDS-Views und gehen auf die Vorteile und Anwendungsmöglichkeiten ein.

Was sind CDS-Views?

Seit SAP S/4HANA kommt ein neues virtuelles Datenmodell zum Einsatz, das komplett auf CDS (Core Data Services) Views basiert. SAP CDS-Views sind eine innovative Möglichkeit, Daten in SAP-Anwendungen zu modellieren und zur Verfügung zu stellen. Sie speichern dabei die Daten nicht physisch, sondern greifen lediglich auf vordefinierte Datenmodelle, wie beispielsweise eine Datenbank, zu. Durch Assoziationen können auch mehrere Datenquellen kombiniert und so komplexe Strukturen in nur einer einheitlichen Sicht abgebildet werden. Im ABAP-Umfeld können CDS-Views einfach anstelle einer Datenbanktabelle als Bezugsquelle in einem Report angegeben werden. Aber auch Fiori-Anwendungen, die über OData-Webservices auf Daten zugreifen, können über Core Data Services bedient werden.

Wenn Sie über ein SAP S/4HANA-System verfügen, verwenden Sie CDS-Views bereits an vielen Stellen, ohne dass es Ihnen aktiv beim Benutzen bewusst wird. Select-Abfragen auf die Datenbanktabelle BSIS werden seit SAP S/4HANA beispielsweise standardmäßig durch eine CDS-View behandelt. Vor SAP S/4HANA wurden die Anfragen noch konventionell durch die Datenbanktabelle bearbeitet.

HANA CDS-Views vs. ABAP CDS-Views

Bei CDS-Views wird zwischen HANA CDS-Views und ABAP CDS-Views unterschieden.

ABAP CDS-Views sind datenbankunabhängig und werden, wie es der Name bereits erahnen lässt, innerhalb der ABAP-Entwicklungsumgebung erstellt und ausgeführt. Diese werden hauptsächlich für Daten benutzt, die nicht auf der HANA-Datenbank liegen. Zur Entwicklung wird auf die SAP-eigene Open-SQL-Sprache zurückgegriffen.

HANA CDS-Views hingegen werden ausschließlich auf der SAP HANA-Datenbankplattform ausgeführt und können in der ABAP-Umgebung, beispielsweise einem Report, nicht verwendet werden, da sie im ABAP Dictionary nicht auftauchen. Entwickelt werden diese in der Sprache SQL. Die Views werden in DDL-Objekte (Data Definition Language) gespeichert.

Vorteile und Nutzen von CDS-Views

Performanceoptimierung

Einer der wichtigsten Vorteile ist sicherlich die Steigerung der Performance. CDS-Views werden direkt auf der SAP HANA-Datenbank ausgeführt und nutzen somit die In-Memory-Funktion. Die Daten von Datenbankabfragen werden daher nicht lokal verarbeitet, sondern die gesamte Rechenoperation wird auf die HANA-Datenbank verschoben. Diese liefert das Ergebnis der Abfrage zurück, sodass keine weiteren lokalen Verarbeitungen nötig sind – der Datenfluss ist somit auf das Minimum beschränkt.

Große Datenmodellierungsmöglichkeiten

CDS-Views sind einfach und intuitiv zu definieren, da sie programmierbar sind. Hierdurch haben Sie viele Möglichkeiten bei der Modellierung der Daten.

Assoziationen

Durch die Hilfe von Assoziationen können beispielsweise mehrere Tabellen einfach zusammengeführt werden – dies ersetzt konventionelle Joins auf Datenbanktabellen. Der große Vorteil gegenüber Joins ist, dass der Befehl auf die Assoziation nur dann ausgeführt wird, wenn der Benutzer die Daten auch tatsächlich benötigt. Man spricht daher auch von „Joins on Demand“. Das führt folglich zu merkbaren Performanceverbesserungen. Realisiert wird das dadurch, dass man für die verknüpfte Datenbanktabelle, für die man die Assoziation anlegt, ein extra Feld definiert. Es wird nur dann eine Abfrage ausgeführt, wenn der Benutzer auch auf dieses Feld zugreift.

Außerdem ist es sogar möglich, verschachtelte Views, also CDS-View auf CDS-View, aufzubauen. Dazu gibt man als Bezugsquelle keine Datenbanktabelle an, sondern bezieht sich direkt auf eine bereits definierte CDS-View.

Case-Anweisungen

Außerdem besteht die Möglichkeit, komplexere Case-Anweisungen zu programmieren. In unserem Beispiel wird ein neues Feld Eingangsstatus erstellt. Dieses liefert offen zurück, wenn die verbuchte Menge leer oder null ist. Teilempfangen wird zurückgeliefert, wenn die verbuchte Menge größer null sowie kleiner der Liefermenge ist. In allen anderen Fällen gilt der Status als vollständig.

Neu erstellte Felder in einer CDS-View können Sie nicht nur für Auswertungen oder zur Ansicht verwenden, sondern auch problemlos in Ihr ABAP-Coding einbinden. Wenn Sie komplexere Prüfungen (wie in unserem Beispiel) bisher lokal ausgeführt haben, können Sie diese ganz einfach in der CDS-View definieren. Somit wird das Coding übersichtlicher und da die Anweisungen auf der HANA-Datenbank ausgeführt werden, kommt das schließlich auch der Performance des Programms zugute.

Wiederverwendbarkeit

Wenn Sie auf die gleichen Daten in unterschiedlichen Programmen zugreifen möchten, können Sie auf vorhandene CDS-Views zurückgreifen, anstatt die Abfragen und Prüfungen erneut zu entwickeln. Sollte Ihnen für Ihre Anwendung eine Funktionalität fehlen, können Sie die CDS-View beispielsweise um ein Feld erweitern. Dadurch erhalten Sie keine Nachteile, wie etwa eine schlechtere Performance in anderen Programmen. Sie profitieren aber davon, dass Sie die Entwicklung nicht mehrfach durchführen müssen.

Gute Einbindung bei der Fiori-Entwicklung

Bei der Entwicklung von Fiori-Anwendungen erhält man mit CDS-Views eine große Zeitersparnis. Mit der Hilfe von CDS-Annotationen wird es ermöglicht, die CDS-Objekte mit weiteren Metadaten anzureichern. So lassen sich beispielsweise bei einem OData-Webservice die GET-, INSERT-, UPDATE- und DELETE-Funktionalitäten automatisch generieren, ohne die Methoden dabei anpassen zu müssen.

Fazit

Die Einführung von Core Data Services hat die Art und Weise, Daten im SAP-Umfeld zu modellieren und zu verarbeiten, sehr geprägt. Sie profitieren von mehr Möglichkeiten, wie beispielsweise dem Anlegen von Case-Anweisungen. Außerdem ist es Entwicklern nun möglich, komplexe Datenstrukturen mit minimalem Aufwand zu erstellen und diese an verschiedenen Stellen wiederzuverwenden. Doch auch für den Benutzer gibt es merkbare Verbesserungen: Die enorme Steigerung der Performance führt zu schnelleren Ladezeiten und reaktionsschnelleren Benutzeroberflächen, was zu einer insgesamt verbesserten Benutzererfahrung führt.

Zusammenfassend lässt sich sagen, dass die Einführung von CDS-Views nicht nur bedeutende Änderungen für die Entwicklung parat hält, sondern auch zu einer deutlich verbesserten Benutzung führt.

 

Stand: 7. Juni 2024
Newsletter Setzen Sie auf fundiertes Wissen aus allen Bereichen unserer Branche. Regelmäßig und stets aktuell.
Beratende Person
Kontakt Haben Sie Fragen oder wünschen weitere Informationen? Unsere Experten beraten Sie gerne.