Ansicht
Dokumentation

ABENCDS_F1_SESSION_VARIABLE - CDS F1 SESSION VARIABLE

ABENCDS_F1_SESSION_VARIABLE - CDS F1 SESSION VARIABLE

ABAP Short Reference   Fill RESBD Structure from EBP Component Structure  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

- session_variable

... $session.vname ...

Wirkung

Angabe einer Sitzungsvariable vname an einer Operandenposition einer SELECT-Anweisung einer CDS-View. Die Groß-/Kleinschreibung ist relevant. Neben der Schreibweise $session.vname können auch $Session.Vname und $SESSION.VNAME verwendet werden. Andere Schreibweisen sind nicht erlaubt.

Sitzungsvariablen haben einen vordefinierten Namen und sind bei Verwendung der CDS-View in auf einen vorgegebenen Wert gesetzt. Dies gilt auch für CDS-Views, die in anderen CDS-Views als Datenquellen verwendet werden. Es gibt folgende Sitzungsvariablen:

vname Wert beim Zugriff mit
user Aktueller Benutzername , nomineller Wert des ABAP-Systemfelds sy-uname.
client Aktueller Mandant. Der Standardwert ist der nominelle Wert des ABAP-Systemfelds sy-mandt. Während eines Zugriffs mit einer -Anweisung mit dem Zusatz USING CLIENT und während eines Aufruf einer AMDP-Methode aus ABAP, bei deren Deklaration der Zusatz AMDP OPTIONS CDS SESSION CLIENT angegeben ist, der dabei angegebene Wert.
system_language Textumgebungssprache der aktuellen internen Sitzung, nomineller Wert des ABAP-Systemfelds sy-langu
system_date Aktuelles Systemdatum des AS ABAP, nomineller Wert des ABAP-Systemfelds sy-datum

Hinweise

  • Technisch gesehen bezeichnen Sitzungsvariablen globale Variablen der aktuellen Datenbank, die bei Verwendung der CDS-View in auf ihren Wert gesetzt werden. Wenn nicht mit auf eine CDS-View mit Sitzungsvariablen zugegriffen wird, ist deren Inhalt mit Ausnahme der SAP-HANA-Datenbank undefiniert.
  • Für Eingabeparameter von CDS-Views, die mit der speziellen Annotation environment.systemField versehen sind, kann die Werte der hier aufgeführten Sitzungsvariablen auch automatisch übergeben. In der Regel ist die Verwendung solcher lokaler Eingabeparameter vorzuziehen.
  • In vorhandenen CDS-Views ohne entsprechende Eingabeparameter können Sitzungsvariablen an die Eingabeparameter von dort verwendeten CDS-Views oder CDS-Tabellenfunktionen übergeben werden.
  • Bei einem Zugriff mit der -Anweisung SELECT auf eine CDS-View, welche die Sitzungsvariable client verwendet, kann der Zusatz USING CLIENT verwendet werden und wird für die Dauer der -Anweisung in der Sitzungsvariable berücksichtigt. Die Zusätze USING $[ALL$] CLIENTS $[IN$] sowie der obsolete Zusatz CLIENT SPECIFIED dürfen nicht verwendet werden.
  • Eine CDS-View, die direkt oder über eine verwendete View auf eine Sitzungsvariable zugreift, kann in der Regel nicht gepuffert werden. Nur mandantenabhängige Views, die direkt auf die Sitzungsvariable client zugreifen, können gepuffert werden.

Beispiel

Die folgende CDS-View enthält die möglichen Sitzungsvariablen in ihrer SELECT-Liste. Das Programm DEMO_CDS_SESSION_VARIABLES greift mit auf die View zu, wodurch die Sitzungsvariablen mit den zugehörigen Werten gefüllt werden. Dabei kann ausgesucht werden, ob ohne oder mit USING CLIENT gearbeitet wird.

Beispiel

Die folgende CDS-View DEMO_CDS_SELECT_T100 greift auf eine weitere CDS-View DEMO_CDS_SELECT_T100_LANGU mit einem Eingabeparameter für die Sprache zu, dem die Annotation environment.systemField mit dem Wert system_language zugeordnet ist. Anders als in erfolgt hierbei keine implizite Übergabe des Aktualparameters an den Eingabeparameter. Statt dessen wird die entsprechende Sitzungsvariable $session.system_language übergeben. Das Programm DEMO_CDS_T100 greift mit auf beide Views zu und das Ergebnis ist gleich. Beim Zugriff auf DEMO_CDS_SELECT_T100_LANGU wird implizit der Wert des Systemfelds sy-langu an den Eingabeparameter übergeben. Beim Zugriff auf DEMO_CDS_SELECT_T100 wird die Sitzungsvariable $session.system_language mit diesem Wert versorgt.






Addresses (Business Address Services)   rdisp/max_wprun_time - Maximum work process run time  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 10922 Date: 20240523 Time: 175302     sap01-206 ( 162 ms )