Hallo Manfred,
> ... eine DB2-Downloaddatei ... Die einzelne Zeile ist 1865 Zeichen lang.
ist die Quelldatei eigentlich eine *.dbf? Wenn du eigentlich eine Textdatei als Quelle für die Umformung benutzt, dann könntest du auch die Funktion LINEIN verwenden, statt mit einer Schleife zeichenweise einzulesen. Danach vielleicht ein TRANSLATE, um die unerwünschten Zeichen zu eliminieren, dann mit SUBSTR auf die erforderliche Zeilenlänge (511 Zeichen) der Ausgabedatei kürzen und das '@' anhängen. Schließlich mit LINEOUT zeilenweise in die Ausgabedatei ausgeben. Mit der Funktion LINES wird geprüft, ob in der Quelldatei noch Sätze sind.
Wenn du aber zeichenweise einliest, böte es sich auch an, jedes Zeichen gleich an eine Variable anzuhängen, sofern es nicht eines der unerwünschten ist. Die angehängten Zeichen werden gezählt, indem jedesmal ein Zähler hochgezählt wird, der die Schleife nach dem 511. Zeichen unterbricht, dann wird ein '@' angehängt, mit LINEOUT ausgegeben und von vorn begonnen.
... ist mir gerade so durch den Kopf gegangen, vielleicht kannst du's ja als Anregungung gebrauchen?
Gruss, Thomas
[ Leser: 43 ] |