Ursprünglich veröffentlicht am 29. März 2023.
Verfasst von: Anja Kaup (PR und Marketing Managerin) – anja.kaup@infocient.de
SAP bietet für S/4HANA zwei Haupttechnologien an, um virtuelle Modelle (oder Views) direkt auf der HANA-Datenbank zu erstellen und damit den Zugriff auf Daten in Echtzeit für BI-Analysen zu gewährleisten: HANA Views (Calculation Views) und CDS Views (Core Data Service).
Auch wenn beide Views die gleiche Performance liefern, unterscheiden sie sich doch in Bezug auf die benötigten Voraussetzungen und die Erstellung. Dieser Beitrag zeigt Ihnen insbesondere die Unterschiede der beiden Ansätze bei der Erstellung – mit den entsprechenden Screenshots – und das Ergebnis der beiden Verfahren.
Was ist der Unterschied zwischen Calculation und CDS Views?
Systemvoraussetzungen für CDS-Views
Grundsätzlich können CDS Views in den meisten SAP-Systemen verwendet werden, einschließlich SAP S/4HANA, SAP ERP Central Component (ECC), SAP Business Suite on HANA, SAP Business Warehouse (BW) und SAP HANA-Plattformen.
Hier sind einige spezifische Systemanforderungen für CDS Views in SAP S/4HANA:
- SAP S/4HANA 1610 oder höher: CDS Views sind in SAP S/4HANA seit Version 1610 Standard und benötigen keine zusätzlichen Komponenten.
- SAP NetWeaver 7.5 SP5 oder höher: Wenn Sie CDS Views in SAP ERP Central Component (ECC) verwenden möchten, benötigen Sie mindestens SAP NetWeaver 7.5 SP5 oder höher. Die Entwicklung von CDS Views auf niedrigeren Versionen kann zu Problemen hinsichtlich der technischen Möglichkeiten führen, da die erforderlichen Funktionen fehlen.
- SAP HANA DB 2.0 SP01 oder höher: Wenn Sie CDS Views in einer SAP HANA-Plattform verwenden möchten, benötigen Sie SAP HANA DB 2.0 SP01 oder höher.
- Darüber hinaus ist es wichtig zu beachten, dass CDS Views in SAP eine Reihe von Abhängigkeiten haben, wie z.B. die Verfügbarkeit der erforderlichen Softwarekomponenten und die Erfüllung bestimmter technischer Voraussetzungen. Für eine reibungslose Nutzung von CDS Views sollten Sie daher sicherstellen, dass alle benötigten Komponenten und Voraussetzungen erfüllt sind.
Systemvoraussetzungen für Calculation Views
Grundsätzlich können Calculation Views in den meisten SAP-Systemen verwendet werden, einschließlich SAP S/4HANA, SAP Business Warehouse (BW) und SAP HANA-Plattformen.
Hier sind einige spezifische Systemanforderungen für Calculation Views in SAP S/4HANA:
- SAP HANA DB 2.0 oder höher: Calculation Views sind in SAP HANA seit Version 1.0 verfügbar, jedoch empfiehlt SAP die Verwendung von SAP HANA DB 2.0 oder höher für optimale Leistung und Funktionen.
- SAP HANA Studio oder SAP Web IDE for SAP HANA: Zur Erstellung und Bearbeitung von Calculation Views können Sie entweder das SAP HANA Studio oder die SAP Web IDE for SAP HANA verwenden. Die SAP HANA Studio ist ein Desktop-basiertes Tool, während die SAP Web IDE for SAP HANA eine webbasierte Entwicklungsumgebung ist.
- SAP S/4HANA: Für die Verwendung von Calculation Views in SAP S/4HANA müssen Sie sicherstellen, dass Sie eine unterstützte Version von SAP S/4HANA verwenden, die mit der verwendeten Version von SAP HANA kompatibel ist.
- Darüber hinaus ist es wichtig zu beachten, dass Calculation Views in SAP eine Reihe von Abhängigkeiten haben, wie z.B. die Verfügbarkeit der erforderlichen Softwarekomponenten und die Erfüllung bestimmter technischer Voraussetzungen. Für eine reibungslose Nutzung von Calculation Views sollten Sie daher sicherstellen, dass alle benötigten Komponenten und Voraussetzungen erfüllt sind.
Was sind weitere Voraussetzungen?
Weitere Voraussetzungen finden Sie zusammengefasst in dieser Tabelle:
Abb. 1: Voraussetzungen für CDS Views und Calculation Views, Quelle: Infocient Consulting GmbH
Einstieg in Calculation und CDS Views
Einstieg in Calculation Views
Damit Sie wissen, wo Sie beginnen können, hier eine kurze Anleitung:
Calculation Views werden unter dem Ordner „Content“ angelegt. Nach einem Rechtsklick auf ein Paket wählen Sie New aus.
Anschließend kann Calculation View… ausgewählt werden.
Abb. 2: Einstieg in Calculation Views
Einstieg in CDS Views
Auch bei CDS Views erfolgt zuerst der Rechtsklick auf ein Paket, dann New auswählen und Other ABAP Repository Object auswählen.
Abb. 3: Einstieg in CDS Views
Dann geben Sie „Data Definition“ in die Suchleiste ein und wählen „Data Definition“ aus.
Abb. 4: Einstieg in CDS Views – Data Definition
Erstellung und Entwicklung von CDS Views und Calculation Views
Mit den Core Data Service (CDS) Views und den Calculation Views (CAV) bietet die SAP eine Technologie an, mit der virtuelle Datenmodelle direkt auf einer HANA Datenbank (In Memory) implementiert werden können.
Die Entwicklung der Views findet in unterschiedlichen Perspektiven des HANA Studio statt, einer auf Eclipse basierenden Entwicklungsumgebung. Hier vergleichen wir die Erstellung von CDS Views und Calculation Views.
Erstellung von Calculation Views
Beim Anlegen einer Calculation View wird unterschieden zwischen der Data Category
- Dimension,
- Cube und
- Cube mit Star Join.
Abb. 5: Calculation View Default Einstellung
Die meist genutzte Einstellung ist die Default Einstellung, das bedeutet eine Calculation View vom Typ Graphical mit der Datenkategorie Cube.
Bei dieser Einstellung wird vom System automatisch eine grafische Benutzeroberfläche mit einem Aggregationsknoten (Aggregation Node) erzeugt.
Abb. 6: Calculation View mit Aggregationsknoten
Aus dem linken Bereich können anschließend per Drag & Drop die benötigten Elemente zum Aufbau eines Datenmodells wie beispielsweise Projections, Joins oder Unions hinzugefügt werden.
Eine Beschreibung der Icons finden Sie hier:
https://help.sap.com/docs/SAP_HANA_PLATFORM/fc5ace7a367c434190a8047881f92ed8/a27ee2517d014277836442d37d6af25a.html
Folgender Screenshot zeigt einen Knoten vom Typ Projection.
Abb. 7: Calculation View mit dem Typ Projection
Mithilfe einer Projection können die benötigen Tabellenfelder ausgewählt, Filter eingestellt und berechnete Spalten hinzugefügt werden.
Folgender Screenshot zeigt die Join-Bedingung zwischen den beiden Tabellen VBAP und VBAK.
Abb. 8: Calculation View mit Join Bedingung zwischen zwei Tabellen.
Eine Calculation View vom Typ Cube besitzt abschließend zwingend einen Aggregations-Knoten. Dieser Knoten bestimmt das Gruppierungs- und Aggregationsverhalten der View.
Zur Auswahl stehen die grundlegenden Aggregationsverhalten:
Abb. 9: Calculation View – Beschreibung der Aggregationstypen
Folgender Screenshot zeigt die fertige Calculation View mit dem Join der Tabelle VBAK mit der Tabelle VBAP.
Abb. 10: Calculation View mit Join der beiden Tabellen
Um komplexere Logiken oder einfache Wenn-Abfragen bzw. „IF Abfragen“ zu implementieren, können berechnete Spalten (Calculated Columns) verwendet werden.
Folgender Screenshot zeigt die berechnete Spalte (Calculated Column) Menge, welche mithilfe einer IF-Anweisung und dem Feld SHKZG (Soll-/Haben-Kennzeichen) positiv oder negativ ausgewiesen wird.
Abb. 11: Calculation View mit berechneter Spalte „Menge“
Nach dem Speichern und Aktivieren der View ist es möglich, das Ergebnis über die Data Preview anzusehen.
Abb. 12: Calculation View Ergebnistabelle
Tipps und Tricks bei der Modellierung von Calculation Views
- Denken Sie schon vor Beginn der Modellierung an eine geeignete Architektur. Oftmals ist es sinnvoll, Logiken auf verschiedene Calculation Views (CAV) aufzuteilen und einen CAV durch einen anderen zu konsumieren.
- Auch bei Calculation Views sollten Sie eine Namenskonvention einhalten. Das erspart Ihnen viel Zeit bei späteren Anpassungen oder möglichen Wartungen.
- Nutzen Sie Projektion-Knoten und filtern Sie die Daten so früh wie möglich mithilfe von Input-Parametern.
- Versuchen Sie, die Datenflüsse zwischen einzelnen Views so gering wie möglich zu halten und entfernen Sie nicht benötigte Spalten.
- Implementieren Sie berechnete Spalten (Calculated Columns) auf so wenig unterschiedlichen Knoten wie möglich, um späteren Wartungsaufwand gering zu halten.
- Führen Sie zuerst Aggregationen vor den Berechnungen durch. Eine Aggregation führt zu einer geringen Anzahl von Datensätzen.
Vorteile einer Modellierung mit Calculation Views
Calculation Views bieten als einziges Tool der SAP die Möglichkeit, Datenmodelle über ein graphisches Userinterface zu erstellen.
Hierfür sind weder Kenntnisse in ABAP oder SQL nötig.
Erstellung von CDS Views
CDS Views können mithilfe von Templates erstellt werden.
Folgender Screenshot beschreibt einige Beispiele der Templates.
Abb. 13: CDS Views – Beispiele für Templates
Für unser Beispiel nutzen wir die Default Einstellung „Ansicht definieren“ (Define View).
Vom System wird anschließend automatisch die folgende Oberfläche zur Programmierung erzeugt:
Hinweis: SQL-Views und CDS-Entitäten sind Teil ein und desselben Namensraumes. Daher müssen Sie für einen SQL-View und die Entität unterschiedliche Namen vergeben.
Abb. 14: CDS Views Programmieroberfläche
Im Gegensatz zu den Calculation Views erfolgt die Modellierung in den CDS Views ohne graphische Unterstützung.
Hier ein Beispiel für den Join von VBAK und VBAP in einer CDS View, der nur durch Code oder Script erzeugt wird.
Abb. 15: CDS Views Beispiel für den Join von VBAK und VBAP, der nur durch Code oder Script erzeugt wird
Logiken können hier beispielsweise durch CASE Anweisungen durchgeführt werden.
Folgender Screenshot zeigt die Modellierung der Spalte Menge.
Im Gengensatz zu den Calculation Views arbeitet man bei CDS Views mit „case“ Anweisungen. In diesem Fall wird eine case Anweisung über das Feld SHKZG (Soll-/Haben-Kennzeichen) durchgeführt.
Abb. 16: CDS Views „case“-Anweisung
Das Ergebnis der Modellierung ist auf folgendem Screenshot erkennbar. Die zuvor berechnete Spalte Menge wird als neue, zusätzliche Spalte ausgegeben.
Abb. 17: CDS Views Ergebnistabelle
Tipps und Tricks bei der Modellierung von CDS Views
Nutzen Sie die F3, um eine Art der Vorwärtsnavigation zu nutzen. Platzieren Sie hierzu den Cursor auf der Tabelle oder View, welche Sie anzeigen möchten und drücken Sie F3.
Fazit – Wann sind SAP Calculation Views besser geeignet als CDS Views?
Die Wahl zwischen den beiden Verfahren hängt von den spezifischen Anforderungen und Geschäftsanforderungen ab.
Die Beraterinnen und Berater von Infocient würden vor allem bei komplexen Aufgaben eher CDS Views verwenden.
Gründe für die Verwendung von CDS Views bei komplexen Aufgaben:
- Bei Calculation-Views ist die grafische Modellierung meist langsam und nicht performant bei der Entwicklung
- Ohne weitreichende Berechtigungen fällt das Testen während der Entwicklung schwer
- Ohne HANA Zugriff nicht entwickelbar
- Aufgaben werden in dem grafischen Modus schnell unübersichtlich
- Bei HANA Studio/Eclipse treten oft Feher in der Entwicklungsumgebung auf
- Sie werden auf dem ABAP Applikationsserver entwickelt, Berechtigungen müssen also nur minimal erweitert werden
- Man hier mit dem Coding mehr Möglichkeiten zum Lösen der Aufgabe
CDS-Views sind zwar anspruchsvoller, aber mein Mittel der Wahl.
Stephan, Senior Consultant, Infocient Consulting GmbH
Bei einfachen Aufgaben kann für die Verwendung von Calculation Views auch sprechen:
Mit dem grafischen Editor kann ich bei einfachen Aufgaben ohne großen Aufwand und ohne SQL Kenntnisse verschiedene Datenbanktabellen verbinden.
Fabian, SAP BI Consultant, Infocient Consulting GmbH
Wenn Sie weitere Fragen zu den Einsatzmöglichkeiten von CDS Views oder Calculation Views haben
• schicken Sie uns eine E-Mail oder
• fragen Sie Dr. Armin Elbert telefonisch: +49 621 596 838-50
Foto von Luca Bravo auf Unsplash