PDA

View Full Version : %replace



muadeep
14-02-06, 11:11
Kann mir vieleicht jemand mal verraten, warum das so funkt:

D From S 10 inz('XXXXXXXXXX')
D Scan S 4s 0
D Len S 4s 0
C Eval Scan = %scan(From : SQLStm)
C Eval Len = %len(From)
C Eval SQLStm=%replace(Datei:SQLStm:Scan:Len)
und sorum leider nicht:

C Eval Scan = %scan(From : SQLStm)
C Eval Len = %len(From)
C Eval SQLStm=%replace(Datei:SQLStm:-
C Scan:Len)
bzw. so auch nicht:

C Eval Scan = %scan(From : SQLStm)
C Eval Len = %len(From)
C Eval SQLStm=%replace(Datei:SQLStm: -
C Scan:Len)

bekomme dann da beim Programm-Aufruf an der Stelle mit

C Eval SQLStm=%replace(Datei:SQLStm:-
C Scan:Len)
folgende Fehlermeldung:
Länge oder Anfangsposition liegt außerhalb des gültigen Bereichs für die Zeichenfolgeoperation

.

Fuerchau
14-02-06, 11:19
Entscheidend ist das Minus-Zeichen.
Fortsetzungszeilen werden automatisch erkannt !
Mit dem Minuszeichen führst du eine Rechenoperation aus: 0 - Scan