Ansicht
Dokumentation

ABENCDS_LANGUAGE_ELEMENTS - CDS LANGUAGE ELEMENTS

ABENCDS_LANGUAGE_ELEMENTS - CDS LANGUAGE ELEMENTS

General Data in Customer Master   General Data in Customer Master  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

- Sprachelemente

Die folgenden Abschnitte fassen die Sprachelemente der CDS DDL, CDS BDL und CDS DCL der ABAP CDS thematisch geordnet zusammen.

Zusätzlich zu den hier gezeigten Sprachelementen können CDS-Quelltexte Annotationen mit Metadaten enthalten.

DDL

CDS-Annotationsdefinitionen

Schlüsselwörter und Zusätze

Sprachelement Bedeutung
define annotation ... Definition einer CDS-Annotation
enum Definition von Aufzählungssymbolen einer CDS-Annotation
default Definition von Standardwerten einer CDS-Annotation
array of Definition eines Annotationsarrays.

CDS-Views

Schlüsselwörter und Zusätze

Sprachelement Bedeutung
DEFINE VIEW...AS Definition einer DDIC-basierten CDS-View
DEFINE VIEW ENTITY...AS Definition einer CDS-View-Entität
DEFINE VIEW ENTITY... AS PROJECTION ON Definition einer CDS-Projektions-View
DEFINE TRANSIENT VIEW ENTITY... AS PROJECTION ON Definition einer analytischen CDS-Projektions-View
ROOT Definition einer CDS-View als Wurzelentität
PROVIDER CONTRACT TRANSACTIONAL_QUERY \lbr                  TRANSACTIONAL_INTERFACE \lbr                  ANALYTICAL_QUERY \lbr                  { } Gibt das Szenario an, in dem eine CDS-Projektions-View verwendet wird.
WITH PARAMETERS Definition von Eingabeparametern einer CDS-View
SELECT $[DISTINCT$] ... FROM SELECT-Anweisung einer CDS-View
INNER JOIN ... ON Innerer Join in einer SELECT-Anweisung
LEFT$|RIGHT OUTER JOIN ... ON Äußerer Join in einer SELECT-Anweisung
ASSOCIATION ... TO ... AS ... ON Definition einer CDS-Assoziation für einen Pfadausdruck in einer SELECT-Anweisung
REDEFINE ASSOCIATION Redefinition einer CDS-Assoziation in einer CDS-Projektions-View.
WITH DEFAULT FILTER Angabe einer Standardfilterbedingung einer CDS-Assoziation
1: Attribut eines Pfadausdrucks
INNER ... WHERE Attribut eines Pfadausdrucks
LEFT OUTER ... WHERE ­ Attribut eines Pfadausdrucks
COMPOSITION ... OF Definition einer CDS-Komposition
ASSOCIATION TO PARENT ... AS ... ON Definition einer CDS-To-Parent-Assoziation
KEY Definition eines Elements einer SELECT-List als Schlüsselfeld
AS Definition eines Aliasnamens für ein Element einer SELECT-Liste
$EXTENSION.* Elemente einer Erweiterung in einer SELECT-Liste (nur in DDIC-basierten CDS-Views verfügbar)
$PROJECTION.* Ermöglicht die Wiederverwendung von in der SELECT-Liste einer CDS-View-Entität definierten Ausdrücken in einer Operandenposition der SELECT-Liste derselben CDS-View-Entität.
WHERE ... WHERE-Klausel einer SELECT-Anweisung
GROUP BY ... GROUP-BY-Klausel einer SELECT-Anweisung
HAVING ... HAVING-Klausel einer SELECT-Anweisung
EXCEPT ... EXCEPT-Klausel einer SELECT-Anweisung, derzeit nur für CDS-View-Entitäten verfügbar.
INTERSECT ... INTERSECT-Klausel einer SELECT-Anweisung, derzeit nur für CDS-View-Entitäten verfügbar.
UNION $[ALL$] ... UNION-Klausel einer SELECT-Anweisung
VIRTUAL Definition eines neuen Elements einer CDS-Projektions-View
LOCALIZED Definition der Kardinalität einer Textassoziation
REDIRECTED TO Lenkt eine CDS-Assoziation in einer CDS-Projektionsview auf eine Projektion des Assoziationsziels um.
REDIRECTED TO COMPOSITION CHILD Lenkt eine CDS-Komposition in einer CDS-Projektionsview auf eine Projektion des Kompositionsziels um.
REDIRECTED TO PARENT Lenkt eine CDS-To-Parent-Assoziation in einer CDS-Projektions-View auf eine Projektion des Assoziationsziels um.

Ausdrücke

Operatoren Bedeutung
MAX, MIN, AVG $[AS dtype$], SUM, COUNT Aggregatausdruck in einer SELECT-Anweisung
+, -, *, / Arithmetischer Ausdruck in einer SELECT-Anweisung
CASE, WHEN, THEN, ELSE, END Fallunterscheidung in einer SELECT-Anweisung
CAST Cast-Ausdruck in einer SELECT-Anweisung
=, <>, , >, =, >=, BETWEEN, LIKE, IS NULL, NOT, AND, OR relationaler Ausdruck in einer SELECT-Anweisung

Eingebaute Funktionen

Funktion Bedeutung
ABS, CEIL, DIV, DIVISION, FLOOR, MOD, ROUND Numerische Funktion in einer SELECT-Anweisung
CONCAT, CONCAT_WITH_SPACE, INSTR, LEFT, LENGTH, LPAD, LOWER, LTRIM, REPLACE, RIGHT, RPAD, RTRIM, SUBSTRING, UPPER Zeichenkettenfunktion in einer SELECT-Anweisung
BINTOHEX, HEXTOBIN Bytekettenfunktion in einer SELECT-Anweisung
COALESCE Coalesce-Funktion in einer SELECT-Anweisung
FLTP_TO_DEC, UNIT_CONVERSION, CURRENCY_CONVERSION, DECIMAL_SHIFT, GET_NUMERIC_VALUE, CURR_TO_DECFLOAT_AMOUNT Konvertierungsfunktionen in einer SELECT-Anweisung
DATS_IS_VALID, DATS_DAYS_BETWEEN, DATS_ADD_DAYS, DATS_ADD_MONTHS Datumsfunktion in einer SELECT-Anweisung
TIMS_IS_VALID Zeitfunktion in einer SELECT-Anweisung
TSTMP_IS_VALID, TSTMP_CURRENT_UTCTIMESTAMP, TSTMP_SECONDS_BETWEEN, TSTMP_ADD_SECONDS Zeitstempelfunktion in einer SELECT-Anweisung
ABAP_SYSTEM_TIMEZONE, ABAP_USER_TIMEZONE Zeitzonenfunktion in einer SELECT-Anweisung
TSTMP_TO_DATS, TSTMP_TO_TIMS, TSTMP_TO_DST, DATS_TIMS_TO_TSTMP Datums-/Zeitkonvertierungen in einer SELECT-Anweisung

CDS-Entitätserweiterungen

Schlüsselwörter und Zusätze

Sprachelement Bedeutung
EXTEND VIEW ENTITY...WITH Erweiterung einer CDS-View-Entität oder einer CDS-Projektions-View mit einer CDS-View-Erweiterung
EXTEND CUSTOM ENTITY...WITH Erweiterung einer CDS-Custom-Entität mit einer CDS-Custom-Entitätserweiterung
EXTEND ABSTRACT ENTITY...WITH Erweiterung einer abstrakten CDS-Entität mit einer abstrakten CDS-Entitätserweiterung
EXTEND VIEW ...WITH Erweiterung einer CDS-View mit einer CDS-View-Erweiterung

CDS-Tabellenfunktionen

Schlüsselwörter und Zusätze

Sprachelement Bedeutung
DEFINE TABLE FUNCTION ... RETURNS ... IMPLEMENTED BY METHOD ... Definition einer CDS-Tabellenfunktion

CDS-Hierarchien

Schlüsselwörter und Zusätze

Sprachelement Bedeutung
DEFINE HIERARCHY ... Definition einer CDS-Hierarchie
WITH PARAMETERS Definition von Eingabeparametern einer CDS-Hierarchie
AS PARENT CHILD HIERARCHY Definition einer CDS-Hierarchie über Eltern-Kind-Beziehungen
SOURCE ... Angabe der Datenquelle einer CDS-Hierarchie
CHILD TO PARENT ASSOCIATION Angabe der Hierarchieassoziation einer CDS-Hierarchie
PERIOD FROM ... TO ... VALID FROM ... TO ... Definition einer temporalen Hierarchie
DIRECTORY ... FILTER BY ... Angabe einer Bedingung für die Quelle einer CDS-Hierarchie
START WHERE ... Angabe der Startbedingung einer CDS-Hierarchie
SIBLINGS ORDER BY ... Angabe der Sortierreihenfolge von Geschwisterknoten einer CDS-Hierarchie
DEPTH ... Begrenzung der Hierarchieebenen einer CDS-Hierarchie
NODETYPE ... Festlegen eines Elements als Knotentyp für eine CDS-Hierarchie
MULTIPLE PARENTS ... Definition des Verhaltens bei mehrfachen Elternknoten einer CDS-Hierarchie
ORPHANS ... Definition des Verhaltens bei Waisenknoten einer CDS-Hierarchie
CYCLES ... Definition des Verhaltens bei Knotenzyklen einer CDS-Hierarchie
GENERATE SPANTREE Reduzierung einer CDS-Hierarchie auf einen Baum.

CDS-Custom-Entitäten

Schlüsselwörter und Zusätze

Sprachelement Bedeutung
DEFINE CUSTOM ENTITY ... Definition einer CDS-Custom-Entität
ROOT Definition einer CDS-Custom-Entität als Wurzelentität
WITH PARAMETERS Definition von Eingabeparametern einer CDS-Custom-Entität
ASSOCIATION ... TO ...ON Definition einer CDS-Assoziation in der Elementliste einer CDS-Custom-Entität
WITH DEFAULT FILTER Angabe einer Standardfilterbedingung einer CDS-Assoziation
COMPOSITION ... OF Definition einer CDS-Komposition in der Elementliste einer CDS-Custom-Entität
ASSOCIATION TO PARENT ... ON Definition einer CDS-To-Parent-Assoziation in der Elementliste einer CDS-Custom-Entität

Abstrakte CDS-Entitäten

Schlüsselwörter und Zusätze

Sprachelement Bedeutung
DEFINE ABSTRACT ENTITY ... Definition einer abstrakten CDS-View
ROOT Definition einer abstrakten CDS-Entität als Wurzelentität
WITH PARAMETERS Definition von Eingabeparametern einer abstrakten CDS-Entität
ASSOCIATION ... TO ... ON Definition einer CDS-Assoziation in der Elementliste einer abstrakten CDS-Entität
WITH DEFAULT FILTER Angabe einer Standardfilterbedingung einer CDS-Assoziation
COMPOSITION ... OF Definition einer CDS-Komposition in der Elementliste einer abstrakten CDS-Entität
ASSOCIATION TO PARENT ... ON Definition einer CDS-To-Parent-Assoziation in der Elementliste einer abstrakten CDS-Entität

CDS-Metadatenerweiterungen

Schlüsselwörter und Zusätze

Sprachelement Bedeutung
ANNOTATE ENTITY$|VIEW ... WITH Definition einer CDS-Metadatenerweiterung für eine CDS-Entität
VARIANT Verknüpfung einer CDS-Metadatenerweiterung mit einer CDS-Variante
PARAMETERS Erweiterung der Annotationen der Eingabeparameter einer CDS-Entität

BDL

CDS-Verhaltensdefinitionen

CDS-Verhaltensdefinitionskopf

Sprachelement Bedeutung
managed Definition eines verwalteten RAP-BO
unmanaged Definition eines nicht verwalteten RAP-BO
abstract Definition eines abstrakten BDEF
projection Definition eines Projektions-RAP-BO
interface Definition eines RAP-BO-Interfaces
implementation in class $[unique$] Klasse für eine manuelle Methodenimplementierung
strict Aktiviert den strikten Modus bei BDEF.
extensible ${ \lbr $[with validations on save$] \lbr $[with determinations on save$] \lbr $[with determinations on modify$] \lbr$} Ermöglicht BDEF-Erweiterungen für die angegebenen Entitäten.
with draft Aktiviert das Entwurfskonzept für ein RAP-Business-Objekt.
use draft Wiederverwendung der RAP-Entwurfsbehandlung in einer CDS-Projektion-BDEF.
with privileged mode disabling $[base context $[and$]$] Aktiviert den privilegierten Zugriff auf ein RAP-Business-Objekt.
foreign entity Definiert eine Entität, die nicht zur BO-Struktur gehört, als Komponente für die Antwortstrukturen und aktiviert daher das Message-Mapping für andere BOs.

Entitätsverhaltensdefinition

Sprachelement Bedeutung
define behavior for...alias Definiert eine Entitätsverhaltensdefinition

Definition des Berechtigungskontexts

Sprachelement Bedeutung
define authorization context ... \lbr $[for disable ${modify$|read$|modify,read$}$] Hiermit wird ein Berechtigungskontext definiert, mit der Berechtigungsobjekte aufgeführt werden, die beim Aktivieren des jeweiligen Berechtigungskontexts übersprungen werden können.
define own authorization context $[by privileged mode $[and$]$]{...} Definiert einen vollständigen Berechtigungskontext, der in der Implementierung des jeweiligen RAP-BOs verwendeten Berechtigungsobjekte dokumentiert.

Entitätsverhaltensmerkmale

Sprachelement Bedeutung
persistent table Definiert eine persistente Datenbanktabelle zum Speichern von aus transaktionalem Verhalten resultierenden Datenänderungen.
draft table Definiert die zum Speichern von Entwurfsdaten verwendeten Entwurfsdatenbanktabelle.
with additional save, with unmanaged save, and cleanup, with full data Benutzerdefinierte Sicherungsstrategie für verwaltete RAP-BOs.
etag master, etag dependent, total etag Definiert ein ETag-Feld für optimistische Parallelitätskontrolle.
use etag Wiederverwendung von ETag-Feldern für die optimistische Parallelitätssteuerung in einer CDS-Projektions-BDEF.
lock master $[unmanaged$], lock dependent, lock:none Definiert eine Schreibsperre zum Ermöglichen der pessimistischen Parallelitätskontrolle.
authorization master ${ ( global ) $| ( instance ) $| ( global, instance ) $}, authorization dependent, authorization:none, authorization:update Definiert ein Berechtigungskonzept für ein Business-Objekt, damit es gegen unberechtigten Datenzugriff geschützt ist.
early numbering Definiert eine nicht verwaltete, frühe Nummernvergabe für alle Primärschlüsselfelder einer Business-Objekt-Entität.
late numbering Aktiviert beim Anlegen von neuen Entitätsinstanzen die lückenlose Zuordnung für eindeutige Schlüssel.

Entitätsverhaltensrumpf

Sprachelement Bedeutung
field ${ $[(readonly)$] \lbr       $|$[(mandatory)$] \lbr       $|$[(features:instance)$] \lbr       $|$[(mandatory:create)$] \lbr       $|$[(readonly:update)$] \lbr       $|$[(numbering:managed)$]     \lbr       $|$[(suppress)$] $} Definiert Feldzusätze
field (modify) Augmentierung eines virtuellen CDS-Elements in einer CDS-Projektions-BDEF.
group Zerteilt die implementierungsrelevanten Teile der Logik eines Business-Objekts in mehrere Gruppen, um paralleles Arbeiten zu erlauben.
create, update, delete Ermöglicht CRUD-Operationen für ein RAP-Business-Objekt.
use Wiederverwendung der RAP-BO-Operationen in einer CDS-Projektion-BDEF.
association ... abbreviation ... \lbr$[with draft$] $[without response$] Ermöglicht Read-By-Association- und Create-By-Association-Operationen für Assoziationen
$[static$]$[factory$]$[static factory$] action ... $[external$] Definiert eine Aktion
$[static$] function ... $[external$] Definiert eine Funktion
determine action ... $[always$] Definiert eine Determinierungsaktion, die das Ausführen von Determinierungen und Validierungen auf Anfrage durch einen RAP-BO-Consumer erlaubt.
   draft action Edit \lbr$|  draft action Activate \lbr$|  draft action Discard \lbr$|  draft action Resume $[with additional implementation$] \lbr$|  draft determine action Prepare Definiert eine Entwurfsaktion in einem entwurfsfähigen Szenario.
parameter ... $[$self$] Definiert einen Eingabeparameter für eine Aktion oder Funktion
result $[selective$] [cardinality] ${ $self $| entity $} Definiert einen Ausgabeparameter für eine Aktion oder Funktion
mapping for ... $[control ... $] $[corresponding$] $[except$] Ordnet Feldnamen aus dem aktuellen Datenmodell Feldnamen aus Datenbanktabellen zu.
validation ... on save { ... } Definiert eine Validierung, die während der Sicherungssequenz aufgerufen wird.
determination ... on save { ... } $| on modify { ... } Definiert eine Determinierung, die während der Sicherungssequenz oder unmittelbar nach einer Datenänderung aufgerufen wird.
features: global, features: instance RAP-BO-Operationszusatz Kann verwendet werden, um eine globale oder instanzbasierte Feature-Control für eine RAP-BO-Operation zu definieren.
internal Definiert eine RAP-BO-Operation als eine interne Operation.
precheck Verhindert illegale Änderungen im Applikationspuffer indem Modifizierungsoperationen vorab geprüft werden.
augment Präzisiert modifizierende Anweisungen für die Projektionsschicht in einer CDS-Projektions-BDEF.

Abstrakte Verhaltensdefinitionen

Sprachelement Bedeutung
with hierarchy Veranlasst den Aufbau einer neuen Art des abgeleiteten BDEF-Typs. Nur in abstrakten BDEFs verfügbar.
with control Optionaler Zusatz der Anweisung define behavior, der nur in abstrakten BDEFs verfügbar ist. Erweitert die jeweilige abgeleitete Typstruktur um die %control-Struktur.
scalar entity ... field Alternativ zur Entitätsverhaltensdefinition und nur in abstrakten BDEFs verfügbar. Hiermit wird ein Knoten des CDS-Kompositionsbaums in den hierarchischen abgeleiteten Typ der abstrakten BDEF als skalarer Typ integriert.
association ... $[with hierarchy$] In einer abstrakten BDEF kann eine Assoziation mit dem optional Zusatz with hierarchy definiert werden. Dieser Zusatz steht To-Parent-Assoziationen und BO-übergreifenden Assoziationen zur Verfügung, damit sie mehrfach in die Typstruktur aufgenommen werden können.
deep mapping for ... $[corresponding$] $[sub$] Definiert eine tiefe Abbildung in einer abstrakten BDEF.

BDEF-Erweiterungen

Schlüsselwörter und Zusätze

In dieser Liste werde spezielle Sprachelemente für BDEF-Erweiterungen angezeigt. Es dürfen auch Anweisungen aus CDS-Verhaltensdefinitionen verwendet werden.

Sprachelement Bedeutung
extension Hiermit wird eine BDEF-Erweiterung definiert.
extend behavior for Hiermit wird eine RAP-Entitätsverhaltenserweiterung definiert.
extend own authorization context Hiermit wird ein vollständiger Berechtigungskontext erweitert.
extend determine action Hiermit wird eine vorhandene RAP-BO-Determinierungsaktion erweitert.
extend draft determine action Prepare Hiermit wird eine vorhandene Entwurfsdeterminierungsaktion Prepare erweitert.
extend mapping for Hiermit wird eine vorhandene RAP-Abbildung erweitert.
extension for projection Hiermit wird eine CDS-Projektionsverhaltensdefinition erweitert.
ancestor association Hiermit wird eine CDS-Assoziation als Vorfahrenassoziation definiert. Das Assoziationsziel muss ein Erweiterungsknoten sein.

DCL

CDS-Rollen

Schlüsselwörter und Zusätze

Sprachelement Bedeutung
DEFINE ROLE Definition einer CDS-Rolle
GRANT SELECT ON Definition einer Zugriffsregel in einer CDS-Rolle
COMBINATION MODE OR$|AND Angabe mehrerer Zugriffsregeln für die gleiche CDS-Entität
REDEFINITION Angabe der einzigen existierenden Zugriffsregel für die CDS-Entität
WHERE WHERE-Klausel in einer bedingten Zugriffsregel einer CDS-Rolle
AND, OR, NOT Boolescher Operator in einer bedingten Zugriffsregel einer CDS-Rolle
INHERIT Definition einer geerbten Zugriffsregel einer CDS-Rolle (obsolet)
ASPECT pfcg_auth,\lbr ASPECT user Bedingungen für CDS-Rollen
PFCG_MAPPING Angabe einer PFCG-Abbildung in einer PFCG-Bedingung einer CDS-Rolle
INHERIT ... FOR GRANT SELECT ON Definition einer Vererbungsbedingung einer CDS-Rolle
... =$|<>$|$|>$|<=$|>=$|?=$|BETWEEN$|LIKE$|IS NULL ... Operatoren für Literalbedingungen
BYPASS WHEN Angabe der Bedingung für Berechtigungsfilterung
IN SCENARIO Angabe der schaltbaren Berechtigungsprüfung
INHERIT CONDITIONS FROM ENTITY Definition einer Vererbungsbedingung einer CDS-Rolle
INHERIT CONDITIONS FROM SUPER Definition einer Vererbungsbedingung einer CDS-Rolle

CDS-Zugriffsrichtlinie

Schlüsselwörter und Zusätze

Sprachelement Bedeutung
DEFINE ACCESSPOLICY Definition einer CDS-Zugriffsrichtlinie
DEFINE PFCG_MAPPING ... BETWEEN ... AND ... USING ... Definition einer PFCG-Abbildung in einer Zugriffsrichtlinie
DEFINE ASPECT ... AS SELECT FROM ... WITH USER ELEMENT Definition eines selbstdefinierten Aspekts im Rahmen einer CDS-Zugriffsrichtlinie






BAL_S_LOG - Application Log: Log header data   ABAP Short Reference  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 81981 Date: 20240523 Time: 182259     sap01-206 ( 559 ms )