Zeichenketten-Templates sind ABAP-Ausdrücke vom Ergebnistyp „string". Sie können Zeichenketten-Templates an jeder beliebigen Position eines Leseoperanden verwenden, z.B. auf der rechten Seite einer Wertzuweisung.
Ein Zeichenketten-Template beginnt und endet mit einem Pipe-Symbol ( | ). Das einfachste Zeichenketten-Template enthält lediglich literalen Text. In dieser Form unterscheidet sich ein Zeichenketten-Template nicht wirklich von einem Stringliteral.
Was ein Zeichenketten-Template von einem Stringliteral unterscheidet, ist die Fähigkeit, Ausdrücke einzubetten. Ein eingebetteter Ausdruck ist ein ABAP-Ausdruck, der von einem Paar geschweifter Klammern ( { und } ) umgeben ist. Zur Laufzeit wertet ABAP den eingebetteten Ausdruck aus und übersetzt das Ergebnis in eine Zeichenkette. Im Endergebnis ersetzt diese Zeichenkette den eingebetteten Ausdruck (zusammen mit den umgebenden geschweiften Klammern).
Notiz
Die ABAP-Syntax erfordert mindestens ein Leerzeichen nach der öffnenden Klammer und mindestens ein Leerzeichen vor der schließenden Klammer.
Natürlich kann ein Zeichenketten-Template mehr als einen eingebetteten Ausdruck enthalten.
Innerhalb der geschweiften Klammern können beliebige ABAP-Ausdrücke platziert werden: arithmetische Ausdrücke, wie im obigen Beispiel, aber einzelne Variablen oder sogar Literale können als eingebettete Ausdrücke dienen.
Ein wichtiger Anwendungsfall für Zeichenketten-Templates ist die kontrollierte Formatierung der Daten für die Ausgabe.
Im ersten Beispiel ist die Variable „the_date" vom Typ D und enthält ein Datum im internen Format (Rohformat) JJJJMMTT (wobei JJJJ für das Jahr, MM für den zweistelligen Monat und TT für das zweistellige Datum steht). Wenn Sie die Variable „the_date" als eingebetteten Ausdruck in einem Zeichenketten-Template verwenden, entspricht das Ergebnis dem internen Format. Wenn Sie jedoch die Formatoption „DATE = <Datumsformat>" innerhalb der geschweiften Klammern hinzufügen, formatiert das System den Wert als Datum. Wenn Sie „DATE = ISO" hinzufügen, erfolgt die Ausgabe im ISO-Format. Mit „DATE = USER" hängt das Ausgabeformat von den Benutzereinstellungen des aktuellen Benutzers ab.
Das zweite Beispiel veranschaulicht einige der Optionen, die Sie für die Formatierung von Zahlen verwenden können. Mit NUMBER steuern Sie die allgemeine Formatierung von Zahlen, z.B., ob ein Dezimalpunkt oder ein Dezimalkomma verwendet wird. Mit SIGN steuern Sie die Position des Vorzeichens und ob ein Pluszeichen (+) angezeigt wird oder nicht. Mit STYLE können Sie aus mehreren vordefinierten Formaten wählen, z.B. einem wissenschaftlichen Format oder einem technischen Format.
Sie können Felder mit dem Verkettungsoperator && verbinden. Sie können eine beliebige Kombination aus Datenobjekten und Zeichenkettenausdrücken verbinden.
Die Bestandteile des Ausdrucks werden ohne Leerzeichen oder Trennzeichen verbunden. Falls Sie Leerzeichen oder ein anderes Trennzeichen benötigen, müssen Sie es selbst, wie im zweiten Beispiel dargestellt, als Teil des Ausdrucks einfügen.