Ansicht
Dokumentation
ABENCDS_SESSION_VAR_APPLICATION_V2 - CDS SESSION VAR APPLICATION V2
General Data in Customer Master CL_GUI_FRONTEND_SERVICES - Frontend ServicesDiese Dokumentation steht unter dem Copyright der SAP AG.
- CDS-View-Entität, Anwendungssitzungsvariablen
... $session.vname ...
Wirkung
Angabe einer Sitzungsvariablen einer Anwendung vname an einer Operandenposition einer SELECT-Anweisung von einer CDS-View-Entität. Der Variablen muss $session. vorangestellt werden.
Anwendungssitzungsvariablen sind für spezifische Anwendungen erforderlich und können über eine spezielle Systemklasse durch eigene Systemprogramme gesetzt werden. Es gibt folgende Anwendungssitzungsvariablen:
vname | Wert bei Zugriff |
bs_instance_id | Instanz-ID der aktuellen Business-Service-Instanz. Der Rückgabewert ist vom Datentyp SSTRING. |
bs_zone_id | Zonen-ID der aktuellen Business-Service-Instanz. Der Rückgabewert ist vom Datentyp SSTRING. |
Eine CDS-View-Entität, die auf eine Anwendungssitzungsvariable zugreift, muss auch als Vertreterobjekt verwendbar sein. Das heißt auch, dass die jeweilige CDS-View-Entität keine Eingabeparameter haben darf.
Hinweise
- Aus technischer Sicht kennzeichnen Sitzungsvariablen globale Variablen aus der aktuellen Datenbank. Anwendungssitzungsvariablen werden über eine spezielle Systemklasse durch eigene Systemprogramme auf ihren Wert gesetzt. Wie ABAP-Systemfelder sind sie aus einem ABAP-Programm heraus änderbar. Sie sollten aber nicht in Anwendungsprogrammen geändert werden. Sie sollten nur für Lesezugriffe verwendet werden, andernfalls könnten wichtige Angaben für die weitere Programmausführung verloren gehen.
- Die Annotation environment.systemField ist für eingebaute Sitzungsvariablen relevant, nicht aber für Anwendungssitzungsvariablen..
- In vorhandenen CDS-View-Entitäten ohne entsprechende Eingabeparameter können Sitzungsvariablen an die Eingabeparameter von dort verwendeten CDS-View-Entitäten oder CDS-Tabellenfunktionen übergeben werden.
- Anwendungssitzungsvariablen sind ausschließlich in CDS-View-Entitäten unterstützt. Es ist aber möglich, mit Anwendungssitzungsvariablen eine DDIC-basierte CDS-View auf einer CDS-View-Entität aufzubauen. In diesem Fall wird die Information an die DDIC-basierte CDS-View übergeben.
- CDS-View-Entitäten mit Anwendungssitzungsvariablen dürfen in AMDP nicht verwendet werden, da AMDP keine Anwendungssitzungsvariablen unterstützt.
- Die Datenvorschaufunktion in ADT funktioniert nicht für CDS-View-Entitäten mit Anwendungssitzungsvariablen.
Beispiel
Die folgende CDS-View-Entität enthält die Anwendungssitzungsvariable bs_instance_id in ihrer SELECT-Liste. Mit diesem Programm wird über die ABAP-Klasse CL_OSQL_EXTERNAL_CONTEXT einen Wert für diese Sitzungsvariable gesetzt. Die Klasse muss innerhalb einer Prozedur verwendet werden, sonst kommt es zu einer Ausnahme.
Mit diesem Programm wird die Einstellung von Anwendungssitzungsvariablen für systeminterne Zwecke demonstriert. Wie im Beispiel in Anwendungsprogrammen gezeigt sollten keine Anwendungssitzungsvariablen gesetzt oder überschrieben werden, da wichtige Angaben für die weitere Programmausführung verloren gehen können.
ROGBILLS - Synchronize billing plans ROGBILLS - Synchronize billing plans
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 5463 Date: 20240523 Time: 174044 sap01-206 ( 76 ms )