Franz-Georg,

noch kurz einige Erklärungen, damit Du nicht zuviel Grüblen musst.

Der erste Teil dient dem Verfizieren der Endposition. Sollte ein Wert mit " beginnen, ist zu prüfen ob es eine Konstante oder ein Feld mit entsprechendem Separator ("; ist.

Wurde die Feldendposition bestimmt, erfolgt ein Substring in den Array mit einem ersten Cleanup vom " (nur einstellig). Damit wären Felder wie "3;4" von diesen Zeichen befreit.

Der Shift entfernt den bearbeiteten Wert aus dem String. Heisst, der String wird solange abgearbeitet , bis nix mehr da ist.

Am Schluss reduziert der %scanrpl das "" Zeichen auf ein Einzelnes (Erstes und letztes Feld). Dies funktioniert nur in V7R1, ansonsten eine Schleife mit %%scan/%replace.

Hoffe, dies hilft.