Zeichenkettenfunktionen im CDS-View
Siehe HANA.
Siehe SQLScript.
Siehe SAP-Hilfe: CDS - Zeichenkettenfunktionen
Es ist ein häufiger Anwendungsfall, dass man nicht 1-zu-1 ein Feld ausliest, bzw. übergibt, sondern nur ein Teil eines Feldes oder mehrere Felder, bzw. Strings zusammenfügt.
Zeichenkettenfunktionen
CONCAT( arg1, arg2 )
Es werden zwei Felder "ARG1" und "ARG2" (bzw. mehr Felder) concatenated.
LEFT( arg, len )
Von einem Feld ARG werden "len" Zeichen linksbündig extrahiert.
LTRIM( arg, char )
Vom Feld "arg" werden alle führenden und schließenden Leerzeichen entfernt.
RIGHT( arg, len )
Von einem Feld ARG werden "len" Zeichen rechtsbündig extrahiert.
SUBSTRING( arg, pos, len )
Von einem Feld ARG werden "len" Zeichen linksbündig extrahiert, beginnend ab der "pos" Position. Die Zählung für die Position beginnt bei 1 - also nicht wie beim "Offset"-Befehl in ABAP, wo die Zählung bei 0 beginnt.
lpad( arg, en , fuell )
Die Zeichenkettenfunktion LPAD kann flexibel Datenfelder in der Länge ändern. Z. B. hat hier das Feld "EKPO.EBELP" eine Länge von 5, aber im SD-Bereich haben die Positionsfelder eine Länge 6. Daher soll jetzt das Feld EKPO.EBELP auf eine neue Länge von 6 erweitert werden. Links werden die freien Zeichen (in diesem Fall eine Ziffer) mit Nullen aufgefüllt.
lpad( ekpo.ebelp, 6 , '0' )
Kombination Zeichenkettenfunktionen
Diese Zeichenkettenfunktionen können auch kombiniert werden, z. B. hier werden hier mit dem Befehl "RIGHT" von einem Feld "EKBE.GJAHR" die letzten 2 Stellen ausgelesen und dies mit dem Befehl "CONCAT" concatenated mit einem Feld "EKBE.GJAHR".
concat( RIGHT(ekbe.gjahr,2), ekbe.buzei ) as posnr_lf