Ansicht
Dokumentation
ABENOPEN_SQL_HOST_EXPRESSIONS - OPEN SQL HOST EXPRESSIONS
BAL Application Log Documentation General Material DataDiese Dokumentation steht unter dem Copyright der SAP AG.
- @( expr )
Syntax
... @( expr ) ...
Wirkung
Angabe eines Hostausdrucks in einer -Anweisung. Hostausdrücke sind ABAP-Ausdrücke expr, die in an Operandenpositionen angegeben werden können. expr ist eine allgemeine Ausdrucksposition. Es können alle dort möglichen Ausdrücke und Aufrufe sowie einzelne Datenobjekte angegeben werden.
Hostausdrücke können als elementare SQL-Ausdrücke an allen Operandenpositionen angegeben werden, an denen SQL-Ausdrücke möglich sind. Sie können zusätzlich auch an folgenden Lesepositionen vorkommen, an denen keine SQL-Ausdrücke möglich sind:
- Operand n hinter UP TO.
- Operand n hinter PACKAGE SIZE.
- Rechte Seiten von SQL-Bedingungen außer LIKE und IN.
- Aktualparameter für Eingabeparameter von CDS-Views oder CDS-Tabellenfunktionen.
- Arbeitsbereiche wa und die internen Tabellen itab der Anweisungen INSERT, UPDATE, MODIFY und DELETE.
- Rechte Seite eines SET-Ausdrucks bei UPDATE.
An Operandenpositionen, an denen Hostvariablen als SQL-Ausdrücke behandelt werden, gelten die zugehörigen Einschränkungen.
Die Hostausdrücke einer -Anweisung werden von links nach rechts ausgewertet und die Ergebnisse wie die Inhalte von Hostvariablen an die Datenbank übergeben. Es gelten folgenden Einschränkungen:
- Hostausdrücke können nicht in dynamischen Tokens verwendet werden.
- In einem Hostausdruck in einer SELECT-Liste kann für einen Konstruktorausdruck kein Datentyp aus der Operandenposition für das Zeichen # abgeleitet werden.
Hinweise
- An den Operandenpositionen, an denen Hostausdrücke angegeben werden können, können immer auch Hostvariablen angegeben werden aber nicht umgekehrt.
- An manchen Operandenpositionen, an denen Hostausdrücke verboten, Literale und Hostvariablen aber erlaubt sind, kann die Syntax @( literal ) und @( dobj ) verwendet werden. Sie wird dort nicht als Ausdruck, sondern als Literal bzw. Hostvariable behandelt.
- Bei der Angabe von Hostausdrücken wird die Syntaxprüfung in einem strikten Modus ausgeführt, welche die Anweisung strenger behandelt als die normale Syntaxprüfung.
Beispiel
Bestimmung der rechten Seite eines Vergleichs in einer WHERE-Bedingung über einen funktionalen Methodenaufruf in einem Hostausdruck. Hierfür wird innerhalb des Hostausdrucks mit dem Instanzierungsoperator NEW ein temporäres Objekt erzeugt.
CLASS cls DEFINITION.
PUBLIC SECTION.
METHODS get_url RETURNING VALUE(url) TYPE scarr-url.
ENDCLASS.
CLASS cls IMPLEMENTATION.
METHOD get_url.
...
ENDMETHOD.
ENDCLASS.
START-OF-SELECTION.
SELECT FROM scarr
FIELDS carrname
WHERE url = @( NEW cls( )->get_url( ) )
INTO TABLE @DATA(itab).
ABAP Short Reference rdisp/max_wprun_time - Maximum work process run time
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 5894 Date: 20240523 Time: 105919 sap01-206 ( 63 ms )