Natural-Workfiles sind bei uns ein beliebtes Hilfsmittel zum Datenex- und -import zwischen den einzelnen Systemen. Leider haben die “normalen” Workfiles die Eigenart mit fixen Zeilenlängen zu arbeiten, was kurze Strings z.B. mit Leerzeichen auffüllt (wordurch die Datengröße drastisch steigt).
Das folgende kleine Natural-Programm zeigt, wie man Workfiles mit dynamischer Zeilenlänge füllt. Man beachte das H'0A' in der WRITE WORK-Zeile: Das ist ein manueller Zeilenumbruch.
DEFINE DATA
*
LOCAL
* Zeilenvariable für das Workfile
01 #WORK1 (A) DYNAMIC
*
END-DEFINE
*
* Definition des Workfiles
DEFINE WORK FILE 1 '$HOME/SomeWorkFile.txt' TYPE 'UNFORMATTED'
*
#WORK1 := 'Test'
*
WRITE WORK 1 VARIABLE #WORK1 H'0A'
CLOSE WORK 1
*
END