ABAP - Die neuen Fluchtsymbole
Solltest du mal die neuen Symbole @ und # irgendwo im Code sehen, musst du nicht gleich verzweifeln, wir helfen dir die neue Logik zu verstehen.
Inhaltsverzeichnis
Mit der Erweiterung der SELECT Anweisung und der Aufnahme neuer Sprachelemente, sind auch einige neue Symbole in das moderne ABAP mit übernommen worden. Diese werden je nach Gebrauch der neuen Befehle und Konstrukte auch sehr oft eingesetzt.
Damit du sie ganz einfach lernst hier erst einmal zwei Beispiele an denen wir die Wirkungsweise erklären möchten.
" Select Anweisung
SELECT * FROM adrc INTO TABLE @DATA(lt_adrc).
" Erzeugung einer Struktur
DATA ls_t001 TYPE t001.
ls_t001 = VALUE #( bukrs = '1234' butxt = 'Test Eingabe' ).
Das @ im SELECT
Das Symbol @ steht nicht nur für das Trennzeichen in einer E-Mail Adresse, sondern wird im Select dazu verwendet, zu sagen wohin eine Anweisung oder Variable gehört. Alles was mit @ im Select gekennzeichnet ist, gehört zum Programm und ist nicht Bestandteil des Zugriffs auf die Datenbank.
Damit können dann verschiedene Aktionen im Select durchgeführt werden:
- Definition einer Tabelle als Ergebnis (siehe Beispiel)
- Übergabe von Parametern und Select-Options
- Verwendung von Inline-Funktionen im Select
Hinweis: Sobald du die neue Logik verwendest, muss diese im kompletten Select angewandt werden. Die Felder werden dann mit Komma voneinander getrennt. Mehr dazu in einem separaten Artikel.
Das # in der Funktion
Ob Hashtag, Raute oder Lattenzaun, das # wird auch in ABAP als neues Symbol verwendet und beschreibt vor allem in den Inline-Funktionen den kontextabhängigen Datentypen.
Im oberen Beispiel bezieht es sich auf einen Datentypen der Variable, der die Struktur über VALUE zugewiesen wird. Damit weiß Value, dass es sich auf den Datentyp der Variable ls_t001 beziehen soll bei der Erzeugung des Datentyps.
Oft zu finden auch bei:
- Übergaben an Methoden
- neuen Inline Funktionen
Fazit
Die neuen Fluchtsymbole sind relativ leicht zu verstehen, wenn man weiß wofür sie gedacht sind. Die Anwendung ist für alle neuen Sprachbefehle Pflicht, deshalb wird kein Weg daran vorbei führen.