Anfang des InhaltsbereichsLiterale Dokument im Navigationsbaum lokalisieren

Literale sind unbenannte Datenobjekte, die im Quelltext eines Programms angelegt werden und durch ihren Wert vollständig bestimmt sind. Der Wert von Literalen ist unveränderbar. Wir unterscheiden Zahlenliterale und Zeichenliterale.

Zahlenliterale

Ein Zahlenliteral ist eine Folge von Ziffern im Programmtext, die ein Vorzeichen enthalten kann. Zahlenliterale können alle Zahlen darstellen, deren Wert im Wertebereich des eingebauten ABAP-Typs P mit einer Feldlänge von 16 liegt, also Zahlen mit maximal 31 Ziffern zuzüglich Vorzeichen. Zahlenliterale, deren Wert zwischen -231+1 und 2 31-1 liegt, haben den eingebauten ABAP-Typ I. Alle übrigen Zahlenliterale haben den Typ P ohne Nachkommastellen. Zahlenliterale mit maximal 15 Stellen zuzüglich Vorzeichen haben dabei eine Feldlänge von 8 Bytes, die übrigen eine Feldlänge von 16 Bytes.

Beispiel

Beispiele für Zahlenliterale:

123
-93
+456

Zahlenliterale in Anweisungen:

DATA number TYPE i VALUE -1234 .

WRITE 6789 .

MOVE 100 TO number.

Um einen nichtganzzahligen Wert oder eine längere Zahl zu repräsentieren, muß ein Zeichenliteral (Datentyp C) verwendet werden. Ebenso muß ein Zeichenliteral des Formats

'[<mantissa>][E][<exponent>]'

für Gleitpunktzahlen verwendet werden. Bei Verwendung solcher Zeichenliterale in ABAP-Anweisung findet eine Typkonvertierung in den entsprechenden numerischen Datentyp statt.

Beispiel

Beispiele für Zeichenliterale, die in numerische Typen konvertiert werden können:

'12345678901234567890'
'+0.58498'
'-8473.67'
'-12.34567'
'-765E-04'
'1234E5'
'+12E+23'
'+12.3E-4'
'1E160'

Zeichenliterale

Ein Zeichenliteral ist eine Folge von alphanumerischen Zeichen im Programmtext, die in Hochkommata oder Backquotes eingeschlossen sind. In Hochkommata eingeschlossene Zeichenliterale haben den eingebauten ABAP-Typ C und werden als Textfeldliterale bezeichnet. In Backquotes eingeschlossene Literale haben den ABAP-Typ STRING und werden als Stringliterale bezeichnet. Die Feldlänge wird durch die Anzahl der Zeichen festgelegt, wobei bei Textfeldliteralen schließende Leerzeichen ignoriert werden, während sie bei Stringliteralen berücksichtigt werden,

Beispiel

Beispiele für Textfeldliterale

'Anton Schmitt'
'69190 Walldorf'

Beispiele für Stringliterale

`Anton Schmitt `
`69190 Walldorf `

Zeichenliterale können bis zu 255 Zeichen lang sein. Ein Textfeldliteral ist immer mindestens ein Zeichen lang (Die Angabe von '' ist gleichbedeutend zu ' ').Ein Stringliteral kann auch leer sein (Die Angabe von `` ist der leere String mit der Länge Null).

Um Zeichenliterale im ABAP Editor einzugeben, die länger als eine Editorzeile sind, erlaubt es die ABAP-Syntax, mehrere Zeichenliterale mit dem Zeichen & zu einem Zeichenliteral zu verknüpfen. Enthält ein Zeichenliteral ein Hochkomma bzw. einen Backquote, muß dieses Hochkomma bzw. der Backquote doppelt eingegeben werden, um dem System mitzuteilen, daß es zum Zeichenliteral gehört und nicht das Ende des Literals darstellt.

Beispiel

WRITE: / 'Das ist John''s Fahrrad'.

WRITE: / `Ein Backquote (``)`.

Diese Anweisungen erzeugen folgende Ausgabe:

Das ist John's Fahrrad

Ein Backquote (`)

Ende des Inhaltsbereichs