Ansicht
Dokumentation

ABENCDS_HIERARCHIES - CDS HIERARCHIES

ABENCDS_HIERARCHIES - CDS HIERARCHIES

SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up   General Material Data  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

- Hierarchien

Eine CDS-Hierarchie wird mit der Anweisung DEFINE HIERARCHY der CDS DDL der ABAP Core Data Services (CDS) im DDL-Quelltext einer CDS-Datendefinition in den ABAP Development Tools definiert. Der Name der CDS-Hierarchie muss gleich dem Namen des DDL-Quelltexts sein. Eine Anzeige des DDL-Quelltexts einer CDS-Hierarchie ist auch im Repository Browser der ABAP Workbench möglich.

Eine CDS-Hierarchie repräsentiert eine SQL-Hierarchie, die bei einem Zugriff auf die CDS-Hierarchie erzeugt wird. Die Verwendung von CDS-Hierarchien ist derzeit nur möglich, wenn die Standarddatenbank eine SAP-HANA-Datenbank ist. Beim Aktivieren einer CDS-Hierarchie wird auf der Datenbank eine gleichnamige View als ABAP-verwaltetes Datenbankobjekt angelegt, welche auf die Hierarchie-Generator-Funktion HIERARCHY zugreift.

Eine CDS-Hierarchie wird mit der Anweisung DEFINE HIERARCHY als CDS-Entität hierarchy deklariert. Als globaler Datentyp repräsentiert die CDS-Entität einen strukturierten Typ mit den Elementen der CDS-Hierarchie als Komponenten und kann wie jede CDS-Entität verwendet werden:

  • In ABAP CDS kann die CDS-Entität als Datenquelle anderer CDS-Entitäten verwendet werden.
  • In ABAP kann die CDS-Entität als Datentyp und in lesenden-Anweisungen verwendet werden.
  • Im ABAP Dictionary kann die CDS-Entität nicht als Datentyp für die Definition von Dictionary-Objekten verwendet werden.

Eine CDS-Hierarchie befindet sich im Namensraum aller globalen Typen eines AS ABAP.

Bei Verwendung einer CDS-Hierarchie ist insbesondere die Behandlung der speziellen Hierarchieattribute zu beachten, welche auf der Datenbank als Teil der Ergebnismenge der dortigen Hierarchiefunktion auftreten:

  • Auf die Hierarchieattribute kann wie folgt explizit zugegriffen werden:
  • Sie können über den Präfix $node. in der Elementliste der CDS-Hierarchie aufgelistet und mit einem Aliasnamen versehen werden und wirken dann wie ein normales Element der CDS-Hierarchie.

  • Sie werden bei einem Zugriff auf eine CDS-Hierarchie in einer Query von unabhängig von deren Elementliste als zusätzliche Hierarchiespalten behandelt und können über ihren Namen in expliziten Spaltenangaben verwendet werden.

Dadurch kann ein in der Elementliste der CDS-Hierarchie aufgeführtes Hierarchieattribut in einer Query von auf zwei Arten angegeben werden, nämlich über den Namen des Elements und über den Namen der Hierarchiespalte.
  • Die Hierarchieattribute werden bei der Verwendung von CDS-Hierarchien in folgenden Fällen nicht implizit berücksichtigt:
  • Bei der Verwendung als Datenquelle anderer CDS-Entitäten.

  • Bei der Verwendung als Datentyp.

  • Bei der Verwendung als Datenquelle in , wenn * oder ...~* in der SELECT-Liste angegeben ist.

In diesen Fällen werden nur die expliziten Elemente der Elementliste berücksichtigt, welche aber Hierarchieattribute darstellen können.

Hinweise

  • Mit der Methode USE_FEATURES der Klasse CL_ABAP_DBFEATURES kann in einem ABAP-Programm festgestellt werden, ob das aktuelle Datenbanksystem Hierarchien unterstützt. Hierzu muss die Konstante HIERARCHIES dieser Klasse in einer internen Tabelle an die Methode übergeben werden.
  • Damit ein Hierarchieattribut Teil des durch eine CDS-Hierarchie gebildeten strukturierten Datentyps wird, muss es explizit in der Elementliste der CDS-Hierarchie aufgelistet sein.






BAL Application Log Documentation   TXBHW - Original Tax Base Amount in Local Currency  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 7222 Date: 20240523 Time: 160822     sap01-206 ( 105 ms )