Suche…


Literale

ABAP bietet drei verschiedene Operatoren zur Deklaration von String- oder Char-like-Variablen an

Symbole Interner Typ Länge Name
'...' C 1-255 Zeichen Textfeldliterale
"..." CString 0-255 Zeichen Textzeichenfolgenliterale
| ... | CString 0-255 Zeichen Vorlagenliterale

Beachten Sie, dass der Längenbereich nur für hart codierte Werte gilt. Intern haben CString Variablen eine beliebige Länge, während Variablen vom Typ C immer eine feste Länge haben.

String-Vorlagen

Stringvorlagen bieten eine bequeme Möglichkeit zum Mischen von literalen Strings mit Werten aus Variablen:

WRITE |Hello, { lv_name }, nice to meet you!|.

Es kann auch Dinge wie Datumsangaben formatieren. So verwenden Sie das Datumsformat des angemeldeten Benutzers:

WRITE |The order was completed on { lv_date DATE = USER } and can not be changed|.

Funktionale Methodenaufrufe und -ausdrücke werden unterstützt:

WRITE |Your token is { to_upper( lv_token ) }|.
WRITE |Version is: { cond #( when lv_date < sy-datum then 'out of date' else 'up to date' ) }|.

Beachtung! Das direkte Implementieren temporärer Ergebnisse (wie Methodenaufrufe) in Stringvorlagen kann zu massiven Leistungsproblemen führen (lesen Sie hier mehr darüber). Die Verwendung in selten ausgeführten Anweisungen ist zwar in Ordnung, führt jedoch dazu, dass sich Ihr Programm in Schleifen schnell verlangsamt.

Zeichenketten verketten

CONCATENATE und char-like-Variablen können mit CONCATENATE Befehl ABAP CONCATENATE verkettet werden. Eine zusätzliche Variable zum Speichern der Ergebnisse ist erforderlich.

Beispiel:

CONCATENATE var1 var2 var3 INTO result.
"result now contains the values of var1, var2 & var3 stringed together without spaces

Stenografie

Neuere Versionen von ABAP bieten eine sehr kurze Variante der Verkettung mit && (Verkettungsoperator).

DATA(lw_result) = `Sum: ` && lw_sum.

Beachtung! Es lohnt sich zu bemerken, dass die Verwendung von temporären Ergebnisse in Kombination mit dem Chaining Betreiber innerhalb von Schleifen können aufgrund der wachsenden Kopie Anweisungen zu massiven Performance - Problemen führen (lesen Sie mehr darüber hier ).



Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow