SAP ABAP - Konstanten & Literale
Literale sind unbenannte Datenobjekte, die Sie im Quellcode eines Programms erstellen. Sie sind vollständig durch ihren Wert definiert. Sie können den Wert eines Literal nicht ändern. Konstanten sind benannte Datenobjekte, die mithilfe deklarativer Anweisungen statisch erstellt wurden. Eine Konstante wird deklariert, indem ihr ein Wert zugewiesen wird, der im Speicherbereich des Programms gespeichert ist. Der einer Konstante zugewiesene Wert kann während der Ausführung des Programms nicht geändert werden. Diese festen Werte können auch als Literale betrachtet werden. Es gibt zwei Arten von Literalen - numerische und Zeichen.
Numerische Literale
Zahlenliterale sind Ziffernfolgen, denen ein Vorzeichen vorangestellt werden kann. In Zahlenliteralen gibt es keine Dezimaltrennzeichen und keine Notation mit Mantisse und Exponent.
Es folgen einige Beispiele für numerische Literale -
183.
-97.
+326.
Zeichenliterale
Zeichenliterale sind Folgen von alphanumerischen Zeichen im Quellcode eines ABAP-Programms in einfachen Anführungszeichen. In Anführungszeichen eingeschlossene Zeichenliterale haben den vordefinierten ABAP-Typ C und werden als Textfeldliterale bezeichnet. In „Anführungszeichen“ eingeschlossene Literale haben den ABAP-Typ STRING und werden als String-Literale bezeichnet. Die Feldlänge wird durch die Anzahl der Zeichen definiert.
Note - In Textfeldliteralen werden nachfolgende Leerzeichen ignoriert, in Zeichenfolgenliteralen jedoch berücksichtigt.
Im Folgenden finden Sie einige Beispiele für Zeichenliterale.
Textfeldliterale
REPORT YR_SEP_12.
Write 'Tutorials Point'.
Write / 'ABAP Tutorial'.
String-Feldliterale
REPORT YR_SEP_12.
Write `Tutorials Point `.
Write / `ABAP Tutorial `.
Die Ausgabe ist in beiden oben genannten Fällen gleich -
Tutorials Point
ABAP Tutorial
Note- Wenn wir versuchen, den Wert der Konstante zu ändern, kann ein Syntax- oder Laufzeitfehler auftreten. Konstanten, die Sie im Deklarationsteil einer Klasse oder einer Schnittstelle deklarieren, gehören zu den statischen Attributen dieser Klasse oder Schnittstelle.
CONSTANTS-Erklärung
Wir können die benannten Datenobjekte mit Hilfe der CONSTANTS-Anweisung deklarieren.
Es folgt die Syntax -
CONSTANTS <f> TYPE <type> VALUE <val>.
Die Anweisung CONSTANTS ähnelt der Anweisung DATA.
<f> gibt einen Namen für die Konstante an. TYP <Typ> stellt eine Konstante mit dem Namen <f> dar, die dieselben technischen Attribute wie der vorhandene Datentyp <Typ> erbt. VALUE <val> weist dem deklarierten Konstantennamen <f> einen Anfangswert zu.
Note- Wir sollten die VALUE-Klausel in der CONSTANTS-Anweisung verwenden. Die Klausel 'VALUE' wird verwendet, um der Konstanten während ihrer Deklaration einen Anfangswert zuzuweisen.
Wir haben 3 Arten von Konstanten wie Elementar-, Komplex- und Referenzkonstanten. Die folgende Anweisung zeigt, wie Konstanten mithilfe der CONSTANTS-Anweisung definiert werden.
REPORT YR_SEP_12.
CONSTANTS PQR TYPE P DECIMALS 4 VALUE '1.2356'.
Write: / 'The value of PQR is:', PQR.
Die Ausgabe ist -
The value of PQR is: 1.2356
Hier bezieht es sich auf den elementaren Datentyp und wird als elementare Konstante bezeichnet.
Das Folgende ist ein Beispiel für komplexe Konstanten -
BEGIN OF EMPLOYEE,
Name(25) TYPE C VALUE 'Management Team',
Organization(40) TYPE C VALUE 'Tutorials Point Ltd',
Place(10) TYPE C VALUE 'India',
END OF EMPLOYEE.
Im obigen Codefragment ist EMPLOYEE eine komplexe Konstante, die sich aus den Feldern Name, Organisation und Ort zusammensetzt.
Die folgende Anweisung deklariert eine konstante Referenz -
CONSTANTS null_pointer TYPE REF TO object VALUE IS INITIAL.
Wir können die konstante Referenz in Vergleichen verwenden oder sie an Verfahren weitergeben.