WRITE WORK [FILE ] work-file-number
[VARIABLE ]
operand1
|
Dieses Dokument behandelt folgende Themen:
Eine Erläuterung der in dem Syntax-Diagramm verwendeten Symbole entnehmen Sie dem Abschnitt Syntax-Symbole.
Verwandte Statements: DEFINE WORK
FILE
| READ WORK
FILE
| CLOSE WORK
FILE
Gehört zur Funktionsgruppe: Verarbeitung von Arbeitsdateien/PC-Dateien
Das Statement WRITE WORK FILE
dient dazu, Datensätze auf
eine physisch-sequentielle Arbeitsdatei (Work File) zu schreiben.
Dieses Statement kann nur im Batch-Betrieb verwendet werden..
Es ist möglich, in einem Programm oder einer Verarbeitungsschleife eine
Arbeitsdatei zu erstellen und diese dann in einem anderen Programm oder einer
anderen eigenständigen Verarbeitungsschleife mit einem
READ WORK FILE
-Statement
zu lesen.
Anmerkung:
Bezüglich Unicode-Support siehe Work Files and
Print Files on Windows, UNIX and OpenVMS
Platforms in der
Unicode and Code Page Support-Dokumentation.
Operanden-Definitionstabelle:
Operand | Mögliche Struktur | Mögliche Formate | Referenzierung erlaubt | Dynam. Definition | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
operand1 | C | S | A | G | A | U | N | P | I | F | B | D | T | L | C | G | ja | nein |
Anmerkung:
Bei den Arbeitsdateitypen ENTIRECONNECTION oder
TRANSFER darf operand1 nicht im Format C oder G
sein.
Syntax-Element-Beschreibung:
Mit einem WRITE WORK FILE
-Statement auf eine Arbeitsdatei
geschriebene Felder werden auf der externen Datei entsprechend ihrer internen
Definition dargestellt. Die Feldwerte werden nicht verändert.
Bei Feldern der Formate A oder B entspricht die Anzahl der Bytes auf der externen Datei der programminternen Längendefinition. Die Feldwerte werden nicht verändert; ein Komma (Dezimalpunkt) wird nicht wiedergegeben.
Bei Feldern des Formats N ergibt sich die Anzahl der Bytes auf der externen Datei aus der Summe der Stellen vor und nach dem Komma. Das Komma (Dezimalpunkt) wird auf der externen Datei nicht wiedergegeben.
Bei Feldern des Formats P ergibt sich die Anzahl der Bytes auf der externen Datei aus der Summe der Stellen vor und nach dem Komma plus einer Stelle für das Vorzeichen, geteilt durch 2, wobei auf ganze Bytes aufgerundet wird.
Anmerkung:
Beim Schreiben von Feldern auf eine Arbeitsdatei erfolgt keine
Umsetzung von Feldformaten.
Beispiele für Felddarstellung:
Felddefinition | Ausgabelänge |
---|---|
#FIELD1 (A10) | 10 Bytes |
#FIELD2 (B15) | 15 Bytes |
#FIELD3 (N1.3) | 4 Bytes |
#FIELD4 (N0.7) | 7 Bytes |
#FIELD5 (P1.2) | 2 Bytes |
#FIELD6 (P6.0) | 4 Bytes |
Anmerkung:
Wenn die Systemfunktionen AVER
,
NAVER
,
SUM
oder
TOTAL
für
numerische Felder (Format N oder P) auf eine Arbeitsdatei geschrieben werden,
vergrößert sich intern die Länge dieser Felder um eine Stelle (z.B.:
SUM
eines Feldes vom Format P3 wird auf P4 verlängert). Dies ist
beim Lesen der Arbeitsdatei zu berücksichtigen.
Arbeitsdateityp | Verarbeitung |
---|---|
ASCII |
Die Arbeitsdateitypen ASCII, ASCII-COMPRESSED und SAG (binär) können keine dynamischen Variablen verarbeiten und rufen einen Fehler hervor. Sie können jedoch große Variablen mit einer maximalen Feld-/Datensatzlänge von 32766 Bytes verarbeiten. |
Der Arbeitsdateityp ENTIRECONNECTION kann keine dynamische Variablen verarbeiten. Er kann jedoch große Variablen mit einer maximalen Feld-/Datensatzlänge von 1073741824 Bytes verarbeiten. | |
Große und dynamische Variablen können mit den beiden Arbeitsdateitypen PORTABLE und UNFORMATTED in Arbeitsdateien geschrieben oder aus Arbeitsdateien gelesen werden. Bei diesen Typen gibt es keine Größenbeschränkung für dynamische Variablen. Große Variablen dürfen jedoch eine maximale Feld-/Datensatzlänge von 32766 Bytes nicht überschreiten. Beim Arbeitsdateityp PORTABLE wird die Feldinformation in der
Arbeitsdatei gespeichert. Während des Mit dem Mit dem |
|
CSV | Die maximale Feld-/Datensatzlänge für dynamische und große Variablen ist 32766 Bytes. Dynamische Variables werden unterstützt. X-Arrays sind nicht erlaubt und resultieren in einer Fehlermeldung. |
** Example 'WWFEX1': WRITE WORK FILE ************************************************************************ DEFINE DATA LOCAL 1 EMPLOY-VIEW VIEW OF EMPLOYEES 2 PERSONNEL-ID 2 NAME END-DEFINE * FIND EMPLOY-VIEW WITH CITY = 'LONDON' WRITE WORK FILE 1 PERSONNEL-ID NAME END-FIND * END