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:

Voraussetzungen cds und calculation views

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.

Start von Calculation Views

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.

Start von CDS Views 1

Abb. 3: Einstieg in CDS Views

Dann geben Sie „Data Definition“ in die Suchleiste ein und wählen „Data Definition“ aus.

Start CDS Views 2

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.

Calculation View - Create an Information View

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.

Calculation View - Aggregation Node

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.

Calculation View 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.

Calculation View Join-Bedingung

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:

Calculation View - Beschreibung der Aggregationstypen

Abb. 9: Calculation View – Beschreibung der Aggregationstypen

Folgender Screenshot zeigt die fertige Calculation View mit dem Join der Tabelle VBAK mit der Tabelle VBAP.

Calculation View mit Join der beiden Tabellen

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.

Calculation View mit berechneter Spalte

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.

Calculation View Ergebnistabelle

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.

CDS Views Beispiele für 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.

CDS VIews Programmieroberfläche

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.

CDS Views 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.

CDS Views case Anweisung

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.

CDS View Ergebnistabelle

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

Ich habe eine Frage zu CDS oder Calculation Views

Foto von Luca Bravo auf Unsplash