Mit der Anweisung @XWRITE kann der Inhalt der aktuellen Arbeitsdatei in eine POSIX-Datei geschrieben werden. Die Arbeitsdatei bleibt dabei erhalten. Diese Anweisung wird nur noch aus Kompatibilitätsgründen unterstützt. Es wird empfohlen, stattdessen die Anweisung @WRITE (Format 1) mit dem Operanden POSIX-FILE
zu benutzen.
Operation | Operanden | F-Modus, L-Modus |
@XWRITE | FILE=xpath [,CODE= { name | EBCDIC | ISO } ] |
xpath | Pfadname der POSIX-Datei, die geschrieben werden soll Der Operand Wird Ist die angegebene Datei nicht wie erforderlich zugreifbar, wird die Anweisung |
CODE= | Es wird festgelegt, in welchem Zeichensatz die POSIX-Datei geschrieben Wird |
name | Zeichensatz der zu schreibenden POSIX-Datei. Als |
EBCDIC | Das Schlüsselwort |
ISO | Das Schlüsselwort |
MODE= | Legt fest, ob die Datei schon vorhanden sein soll bzw. sein darf. Beim |
ANY | Falls die Datei schon existiert, wird sie überschrieben, andernfalls wird sie |
UPDATE | Die Datei, die geschrieben werden soll, muss bereits existieren, andernfalls |
NEW | Die Datei wird neu angelegt und geschrieben. Sie darf noch nicht vorhanden |
REPLACE | Hat die gleiche Bedeutung wie |
Wurde eine POSIX-Datei mit @XOPEN oder @OPEN (Format 1) geöffnet, so kann die Angabe des Dateinamens bei @XWRITE entfallen. Der Inhalt der geöffneten Datei wird durch den Inhalt der Arbeitsdatei ersetzt. Die Datei bleibt geöffnet, bis @CLOSE abgesetzt wird.
Wird die Arbeitsdatei vor dem Schreiben umcodiert und enthält sie Zeichen, die im Zeichensatz der zu schreibenden Datei ungültig sind, werden diese durch ein Ersatzzeichen ersetzt, sofern ein solches spezifiziert ist (siehe @PAR SUBSTITUTION-CHARACTER), andernfalls wird die Datei nicht geschrieben und die Fehlermeldung EDT5453
ausgegeben. Der Benutzer kann dann ein Ersatzzeichen definieren oder den Zeichensatz für das Schreiben verändern und @XWRITE erneut ausführen.
Wird die Anweisung mit [K2] unterbrochen und der EDT-Lauf mit /INFORM-PROGRAM
fortgesetzt, so wird die Bearbeitung der Anweisung abgebrochen und die Meldung EDT5501
ausgegeben.
Achtung
Da MODE=ANY
voreingestellt ist, werden bei fehlender MODE
-Angabe bereits existierende Dateien ohne Warnung überschrieben.