Mit dem Format 3 der @CREATE-Anweisung wird von der Datensichtstation oder von SYSDTA
eine Zeichenfolge gelesen und mit deren Inhalt eine Zeile erzeugt.
Operation | Operanden | L-Modus |
@CREATE | line READ [string[,...]] [,CODE=name] |
line | Die Zeilennummer der aktuellen Arbeitsdatei, in die eine Zeichenfolge |
string | Eine oder mehrere Zeichenfolgen, die in der angegebenen Reihenfolge Ist |
name | Zeichensatz, der für die aktuelle Arbeitsdatei eingestellt werden soll, falls |
Im Dialogbetrieb wird an der Datensichtstation die aus den Operanden gebildete Eingabeaufforderung ausgegeben und eine Zeichenfolge gelesen. Überschreitet die aus den Operanden gebildete Eingabeaufforderung die maximale Länge von 32763 Bytes, wird auf die maximale Länge abgeschnitten und die Fehlermeldung EDT2402
ausgegeben. Ist string
nicht angegeben, wird eine Zeichenfolge von SYSDTA
statt von der Datensichtstation gelesen.
Im Stapelbetrieb wird string
ignoriert und eine Zeichenfolge immer von SYSDTA
gelesen.
Die maximale Länge der gelesenen Zeichenfolge hängt vom Eingabe-Medium ab.
Hat die aktuelle Arbeitsdatei bereits einen Zeichensatz, so wird die gelesene Zeichenfolge vor dem Einfügen in den Zeichensatz der Arbeitsdatei konvertiert. Enthält die einzufügende Zeichenfolge Zeichen, die im Zeichensatz der Arbeitsdatei nicht darstellbar sind, werden diese durch ein Ersatzzeichen ersetzt, sofern ein solches spezifiziert ist (siehe @PAR SUBSTITUTION-CHARACTER), andernfalls wird die @CREATE-Anweisung abgewiesen und die Fehlermeldung EDT5453
ausgegeben.
Ist der CODE
-Operand nicht angegeben und ist die aktuelle Arbeitsdatei leer und hat den Zeichensatz *NONE
, so wird die gelesene Zeichenfolge ohne Konvertieren in die Zeile eingefügt. Für die aktuelle Arbeitsdatei wird der Kommunikationszeichensatz als Zeichensatz eingestellt.
Ist der CODE
-Operand angegeben und hat die aktuelle Arbeitsdatei bereits einen Zeichensatz, der von diesem verschieden ist, dann wird die @CREATE-Anweisung nicht ausgeführt und die Meldung EDT5458
ausgegeben.
Die Eingabe von [F1] ohne Text an einer Datensichtstation bewirkt, dass die angegebene Zeile als Leerzeile (Zeile der Länge 0) angelegt wird. Eine leere Eingabe, die mit [DUE] oder einer anderen Funktionstaste gesendet wird, wird ignoriert und führt zur erneuten Ausgabe der Eingabeaufforderung.
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.
Beispiel
1. @PROC 1 1. @CREATE 1 READ '*** NAME DES ERSTEN TEILNEHMERS ?',CODE=UTF16 – (1) *** NAME DES ERSTEN TEILNEHMERS ? SCHÖLLER 1. @PROC 2 ------------------------------------------------------- (2) 4. @PRINT 1.0000 MAIER 2.0000 ZEILE WIRD ÜBERSCHRIEBEN 3.0000 SCHMIDT 4. @CREATE 2 READ '*** MUELLER ODER MÜLLER ?' -------------------- (3) *** MUELLER ODER MÜLLER ? MÜLLER
(1) | Für die Arbeitsdatei 1, die leer ist und den Zeichensatz |
(2) | Für die Arbeitsdatei 2 sei der Zeichensatz EDF041 eingestellt. |
(3) | An der Datensichtstation wird die Eingabeaufforderung |