Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

@CREATE (Format 3) - Zeichenfolge einlesen und Zeile erzeugen

&pagelevel(3)&pagelevel

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
eingefügt werden soll. Existiert diese Zeile bereits, dann wird sie vollständig
überschrieben

string

Eine oder mehrere Zeichenfolgen, die in der angegebenen Reihenfolge
verkettet und an der Datensichtstation als Eingabeaufforderung ausgegeben
werden sollen.

Ist string nicht angegeben, dann wird an der Datensichtstation keine
Eingabeaufforderung ausgegeben.

name

Zeichensatz, der für die aktuelle Arbeitsdatei eingestellt werden soll, falls
diese leer ist und den Zeichensatz *NONE hat.

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 *NONE hat, wird mit dem Operanden CODE der Zeichensatz UTF16 vereinbart. An der Datensichtstation werden die Eingabeaufforderung '*** NAME DES ERSTEN TEILNEHMERS ?' ausgegeben und eine Zeichenfolge eingelesen. Diese wird in den Zeichensatz UTF16 konvertiert und in die erste Zeile der Arbeitsdatei geschrieben.

(2)Für die Arbeitsdatei 2 sei der Zeichensatz EDF041 eingestellt.
(3)

An der Datensichtstation wird die Eingabeaufforderung '*** MUELLER ODER MÜLLER  ?' ausgegeben und eine Zeichenfolge eingelesen. Diese wird in den Zeichensatz EDF041 der Arbeitsdatei konvertiert und in die zweite Zeile geschrieben. Der bestehende Inhalt der zweiten Zeile wird hierbei vollständig überschrieben.