Ansicht
Dokumentation
ABENNEWS-751-ABAP_CDS - NEWS-751-ABAP CDS
BAL_S_LOG - Application Log: Log header data CL_GUI_FRONTEND_SERVICES - Frontend ServicesDiese Dokumentation steht unter dem Copyright der SAP AG.
zu Release 7.51
Mandantenbehandlung
Eine neue Annotation @ClientHandling steuert die Mandantenbehandlung von CDS-Views und
CDS-Tabellenfunktionen. Sie
ersetzt die Annotation @ClientDependent und macht diese obsolet.
Ausdrücke und Funktionen
Es wurden folgende Erweiterungen vorgenommen:
- In einem CAST-Ausdruck können jetzt Operanden der Typen SSTRING auf andere Typen als sich selbst gecasted werden und umgekehrt. Der Typ SSTRING verhält sich dabei wie der Datentyp CHAR.
- In einem CAST-Ausdruck können Operanden der Typen CLNT, LANG, TIMS und UNIT jetzt auf die Typen CHAR und SSTRING gecasted werden, wobei der Zieltyp als Datenelement angegeben werden muss.
- In einem CAST-Ausdruck können jetzt Datentypen CHAR, SSTR und NUMC auf ACCP gecasted werden und umgekehrt.
- In einem CAST-Ausdruck können jetzt Aggregatausdrücke als Operand verwendet werden.
- Neue Funktionen
- Es werden jetzt folgende zusätzlichen Datums-/Zeitfunktionen unterstützt: ABAP_SYSTEM_TIMEZONE, ABAP_USER_TIMEZONE, TSTMP_TO_DATS, TSTMP_TO_TIMS, TSTMP_TO_DST und DATS_TIMS_TO_TSTMP
- Eine neue eingebaute Konvertierungsfunktion FLTP_TO_DEC kann verwendet werden um Argumente vom Typ FLTP in gepackte Zahlen zu konvertieren.
- Zum Aggregatausdruck AVG kann jetzt ein Zusatz AS dtype angegeben werden, um den Datentyp des Rückgabewerts zu bestimmen.
- Bedingungen
- Auf der rechten Seite einer Bedingung cond_expr einer WHERE-Bedingung, einer ON-Bedingung, einer Filterbedingung und einer komplexen Fallunterscheidung können jetzt eingebaute Funktion angegeben werden.
- In Bedingungen cond_expr können jetzt Felder von Datenquellen vom Typ ACCP mit ebensolchen Feldern und mit Literalen vom Typ NUMC verglichen werden.
Es wurden folgende Änderungen vorgenommen:
- In einem
CAST-Ausdruck fällt die Einschränkung weg, dass beim Cast auf Datenelemente
der eingebaute Datentyp, die Länge und die Anzahl der Nachkommastellen von Operand und Zieldatentyp
genau übereinstimmen müssen. Diese Einschränkung kann jetzt optional mit dem neuen
Zusatz PRESERVING TYPE erreicht werden.
Dieser Zusatz drückt explizit aus, dass auf die semantischen Eigenschaften eines Datenelements
gecasted werden soll. Die Syntaxwarnung, die auf das Casting gleicher technischer Typen hinweist, wird
mit PRESERVING TYPE unterdrückt.
Cross Join
Neben dem inneren und äußeren Join ist in einer SELECT-Anweisung jetzt auch ein
Cross Join möglich.
CDS-Assoziationen
- Für mit UNION gebildeten Vereinigungsmengen können jetzt Assoziationen veröffentlicht werden. Dabei gelten spezielle Regeln.
- Zu einer Assoziation kann mit WITH DEFAULT FILTER eine Standardfilterbedingung angegeben werden, die als Filterbedingung in einem Pfadausdruck verwendet wird, wenn dort keine für die Assoziation angegeben ist.
- In einem Pfadausdruck kann
eine Assoziation mit
*: explizit als nicht eindeutig deklariert werden.
Sitzungsvariablen
Beim Zugriff auf eine CDS-View über kann dort auf die neue Sitzungsvariable
$session.system_date zugegriffen werden, in denen der Wert des Systemfelds sy-datum zur Verfügung steht.
CDS-View-Erweiterung
Mit der Anweisung EXTEND VIEW können jetzt auch folgende CDS-Views erweitert werden:
- CDS-Views mit Aggregatausdrücken und einer GROUP-BY-Klausel,
- CDS-Views mit einer UNION-Klausel für Vereinigungsmengen.
Für Erweiterungen der GROUP-BY-Klausel
und von UNION-Klauseln muss die vorhandene
CDS-View das neue Annotationsarray AbapCatalog.viewEnhancementCategory[
] mit passenden Werten enthalten. Mit dem Wert
#NONE dieses Annotationsarrays können Erweiterungen einer CDS-View durch CDS-View-Erweiterungen jetzt auch vollständig verhindert werden.
Annotationen
- Annotation für Schlüsselfelder
- Mit der neuen View-Annotation AbapCatalog.preserveKey kann das Standardverhalten des Zusatzes KEY für die Definition von Schlüsselfeldern einer CDS-View übersteuert werden. Falls die Annotation mit dem Wert true angegeben ist, werden die mit KEY definierten Schlüsselfelder auch für die zugehörige CDS-Datenbank-View verwendet.
- Null-Werte von Annotationen
-
Für jede Elementannotation, die nicht Teil eines
Annotationsarrays ist, kann
der spezielle Wert
null (ohne Hochkommata) angegeben werden. Er bewirkt, dass die Annotation bei der
Auswertung mit der Klasse
CL_DD_DDL_ANNOTATION_SERVICE standardmäßig nicht berücksichtigt wird.
Metadatenerweiterungen
Metadatenerweiterungen sind neue CDS-Objekte, die es erlauben, CDS-Annotationen für eine CDS-Entität getrennt von deren DDL-Quelltext anzulegen und zu transportieren. Bei der Auswertung von Annotationen mit der Klasse CL_DD_DDL_ANNOTATION_SERVICE werden Metadatenerweiterungen standardmäßig berücksichtigt.
Metadatenerweiterungen werden mit der DDL-Anweisung
ANNOTATE VIEW angelegt und können dabei mit ebenfalls neuen
CDS-Varianten
verknüpft werden, um verschiedene Erweiterungen für eine CDS-Entität anlegen zu
können. Weiterhin ist jede Metadatenerweiterung mit einer Schicht wie Branche, Kunde oder Partner verknüpft, welche bei gleicher oder keiner Variante die Priorität steuert.
Zugriffskontrolle
In der CDS-Zugriffskontrolle wurden folgende Erweiterungen vorgenommen:
- Neben den bedingten Zugriffsregeln gibt es jetzt auch Vollzugriffsregeln und geerbte Zugriffsregeln.
- Für Zugriffsbedingungen gibt es einen neuen Operator ?=, der außer auf einen angegebenen Wert auch auf den Initialwert oder den Null-Wert überprüft.
- Eine neue Benutzerbedingung vergleicht den Wert eines Elements einer CDS-Entität mit dem aktuellen Benutzernamen.
Schlüsselfelder
- Die mit KEY definierten Schlüsselfelder einer CDS-View müssen wie die Schlüsselfelder einer CDS-Tabellenfunktion jetzt zusammenhängend am Anfang der SELECT-Liste stehen.
- Mit der neuen View-Annotation
AbapCatalog.preserveKey kann das Standardverhalten des Zusatzes
KEY für die Definition von Schlüsselfeldern einer CDS-View übersteuert
werden. Falls die Annotation mit dem Wert true
angegeben ist, werden die mit KEY definierten
Schlüsselfelder auch für die zugehörige CDS-Datenbank-View verwendet.
CL_GUI_FRONTEND_SERVICES - Frontend Services Vendor Master (General Section)
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 16837 Date: 20240523 Time: 114613 sap01-206 ( 191 ms )