Anwendungsgebiet: String-Bearbeitung
Die Funktion FILL( ) füllt den String, der im Funktionsaufruf angegeben wurde, bis zur angegebenen Länge und in der angegebenen Richtung mit Füllzeichen auf. Diese Füllzeichen können im Funktionsaufruf definiert werden.
Format
FILL( ) |
STRING = string_ausdruck ,LENGTH = arithm_ausdruck ,SIDE = *RIGHT / *LEFT ,FILL-BYTE = C' |
Ergebnistyp
STRING
Eingabeparameter
STRING = string_ausdruck
Bezeichnet den Eingabestring, der auf die Länge gebracht werden soll, die mit dem Parameter LENGTH = definiert wird.
LENGTH = arithm_ausdruck
Positive Zahl, die die Länge des Ergebnisstrings bestimmt.
Wenn der Wert für LENGTH größer ist als die aktuelle Länge des Eingabestrings (siehe Parameter STRING) und innerhalb des für Stringlängen gültigen Wertebereichs liegt, wird der Eingabestring mit dem vereinbarten Füllzeichen (Parameter FILL-BYTE) aufgefüllt. Wenn „arithm_ausdruck“ außerhalb des gültigen Wertebereichs liegt, wird eine Fehlermeldung ausgegeben. Ist LENGTH kleiner als die Länge von STRING, so wird STRING als Ergebnis unverändert zurückgegeben.
SIDE =
Bestimmt die Ausrichtung des Eingabestrings im Ergebnisstring, das heißt, die Richtung, in der die Füllzeichen angefügt werden. SIDE hat keine Wirkung, wenn der Eingabestring unverändert zurückgegeben wird.
SIDE = *RIGHT
Fügt die Füllzeichen rechts an, das heißt hinter dem letzten Zeichen des Eingabestrings.
SIDE = *LEFT
Fügt die Füllzeichen links an, das heißt vor dem ersten Zeichen des Eingabestrings.
FILL-BYTE =
Bestimmt, mit welchem Zeichen der Eingabestring aufgefüllt wird. FILL-BYTE hat keine Wirkung, wenn der Eingabestring nicht verlängert wird.
FILL-BYTE = C''BLANK'
'
Füllt den Eingabestring (rechts oder links) mit Leerzeichen auf.
FILL-BYTE = zeichen
Füllt den Eingabestring (rechts oder links) mit dem an dieser Stelle angegebenen Zeichen auf. „zeichen“ ist ein beliebiges Zeichen. Wird mehr als ein Zeichen angegeben, wird nur das erste Zeichen als Füllzeichen verwendet.
Wird an Stelle eines Zeichens ein Nullstring angegeben (C''), wird eine Fehlermeldung ausgegeben.
Ergebnis
String in der Länge von LENGTH = zahl
Fehlermeldungen
SDP0431 FEHLER '(&00)' IN BUILTIN-FUNKTION '(&01)' SDP0436 ANGEGEBENE LAENGE LIEGT NICHT ZWISCHEN NULL UND MAXIMAL MOEGLICHER STRING-LAENGE SDP0437 LAENGE DES PARAMETERS 'FILL-BYTE' GLEICH NULL
Beispiel
/A = 'ABCDE' /SHOW-VARIABLE A A = ABCDE /A = FILL(STRING = A, LENGTH = 8, FILL-BYTE = C'.') /SHOW-VARIABLE A A = ABCDE... /A = FILL(STRING = A, LENGTH = 12, SIDE = *LEFT, FILL-BYTE = C'.') /SHOW-VARIABLE A A = ....ABCDE...