CDS-Views und DDL SQL View

Aus SAP-Wiki
Zur Navigation springenZur Suche springen

Siehe HANA.

  • CDS-Views können seit ABAP 7.40 SP5 genutzt werden.[1]
  • CDS-Views sind eines der spannensten Konzepte unter HANA.
  • CDS steht für "Core Data Service Views". Sie stellen einen Select dar.
  • CDS-Views können nur in einer HANA-Datenbank eingesetzt werden in einer SAP-Umgebung.

Problematik CDS-Views

  • CDS-View können ausschließlich in Eclipse (ABAP Development Tools (ADT)) programmiert und angesehen werden[2]. Sie werden dann von einem ABAP-Programm ausgeführt, bzw. ein CDS-View wird von einem anderen CDS-View aufgerufen und der übergeordnete CDS-View wird dann in ABAP verwendet.
  • Es ist zweifelhaft die Programmierung von CDS-Views ausschließlich unter Eclipse zu ermöglichen. Man schließt damit alle Berater und Entwickler bei der Analyse eines CDS-Views aus, die Eclipse nicht installiert haben. Viele Berater und Entwickler müssen nicht zwingend CDS-Views ändern und sparen sich gern die Mühe Eclipse passend zu konfigurieren und sich in Eclipse einzuarbeiten. SAP sollte die Programmierung von CDS-Views auch im SAP-GUI ermöglichen. Aber es ist so wie es ist und CDS-Views können nur in Eclipse angesehen, erstellt und geändert werden.
  • Der SAP-GUI hat gegenüber Eclipse noch viele Vorteile und es wird dauern, bis die Masse der Entwickler und Berater auch selbstverständlich Eclipse installiert hat und CDS-Views versteht.
  • Speziell wenn Entwickler die Firma verlassen haben, die komplexe CDS-Views programmiert haben und es wenig Know-how in der Firma in dieser Technologie gibt, kann es zu Wartungsproblemen der entsprechenden Programme kommen. Das habe ich bereits im Projekt erlebt. SAP-Entwickler und Berater haben oft sehr viel Erfahrung im SAP-GUI und sind konservativ sich eine neue komplexe Entwicklungsplattform zu erschließen. Aber als SAP-Entwickler ist es sinnvoll Eclipse zu installieren und sich in die neue Technologie einzuarbeiten. Mit zunehmender Verbreitung von HANA wird auch die Nutzung von CDS-Views zunehmen und die Notwendigkeit und Chancen für SAP-Entwickler mit Wissen in dieser Technologie steigen.

Entwicklungsumgebung

Performance CDS-View im Vergleich zu ABAP-Joins

  • Die Performance von Selects im CDS-View soll deutlich besser sein als mit Joins in ABAP.
  • Bei einem einfachen Inner-Join über die Tabellen MARA, MARC und MAKT gab es keinen signifikanten Performanceunterschied zwischen ABAP und einem CDS-View. Es wurden Hunderttausende von Datensätzen gelesen und der Unterschied betrug 0,64 Sekunden gegenüber 0,66 Sekunden zugunsten des SQL-Views.
  • Der CDS-View kann seine Vorteile ausspielen, wenn komplexe Joins in einem CDS-View (oder verknüpfte CDS-Joins) erstellt werden und bei ABAP dies nur über einen ABAP-Join in eine interne Tabelle, Loop über die interne Tabelle und weitere Datenselektionen/Selects möglich sind.

"CDS-View" und "DDL SQL View"

  • Ein CDS-View ist immer auch verbunden mit einem "DDL SQL View". Bei der Erstellung des CDS View gibt man auch einen Namen für den DDL SQL View ein.
  • Der DDL SQL View kann im SAP-GUI über SE16 bzw. SE16N aufgerufen werden.
  • Die Ausgabefelder vom DDL SQL View sind auch die Eingabefelder/Selektionsfelder. Entsprechend kann die Ausgabemenge eingeschränkt werden und verhält sich insofern sehr ähnlich zu einer Datenbanktabelle bzw. klassischen Datenbankview, der mehrere Tabellen joint.
  • Es gibt z. B. den CDS-View "VIEW_AB_HEAD_P". Dieser ist verbunden mit dem hier gleichnamig generierten DDL SQL View "CDS_AB_HEAD_P". Wenn es Daten gibt im CDS-View, kann dieser auch mit SE16, bzw. SE16N aufgerufen werden.

CDS1.JPG


CDS2.JPG


CDS3.JPG

Web-Links

Literatur