Die Anweisung @SETLIST weist einer S-Listenvariablen Elemente zu. Dabei werden Werte aus Zeilen der aktuellen Arbeitsdatei oder aus Zeichenfolgevariablen übernommen.
Sind keine Werte spezifiziert, wird der Inhalt der S-Listenvariablen gelöscht.
Operation | Operanden | F-Modus, L-Modus |
@SETLIST | string { [lines[,...] ] [MARK [m] ] | svar} [:cols[,...]:] |
string | Zeichenfolge, die den gültigen Namen einer S-Listenvariablen angibt. Der |
lines | einer oder mehrere Zeilenbereiche, deren Inhalt in die S-Listenvariable |
MARK | Es sollen nur markierte Zeilen der angegebenen Zeilenbereiche übernommen |
m | Nummer der Satzmarkierung ( |
svar | Name einer Zeichenfolgevariablen, deren Inhalt als Element aufgenommen |
cols | Einer oder mehrere Spaltenbereiche, deren Zeichen übernommen werden Ist dieser Operand nicht angegeben, wird die ganze Zeile übernommen. |
MODE= | legt fest, auf welche Art die Liste erweitert werden soll. |
APPEND | Die Liste wird am Ende erweitert, d.h. die neuen Listenelemente werden nach dem letzten Element angefügt (Standardwert). |
PREFIX | Die Liste wird am Anfang erweitert, d.h. die neuen Listenelemente werden |
OVERWRITE | |
Zunächst wird der Inhalt der S-Listenvariablen gelöscht. Anschließend Ist im angegebenen Zeilenbereich keine Zeile vorhanden, enthält die | |
name | Zeichensatz, in den die zuzuweisende Zeichenfolge konvertiert werden |
Das Komma vor dem Operanden MODE
muss zur Unterscheidung von MARK
angegeben werden, wenn außer dem Listennamen oder einer etwaigen Bereichs-Angabe kein anderer Operand angegeben wird.
Die Listenvariable muss bereits existieren, sonst wird die Meldung EDT5274
ausgegeben. Ist sie keine Listenvariable, wird die Meldung EDT4910
ausgegeben. Ist die Listenvariable nicht vom Typ STRING
oder ANY
wird die Anweisung mit der Meldung EDT5343
abgewiesen.
Wird eine S-Variable durch APPEND
oder PREFIX
erweitert, wird im F-Modus zur Information die Meldung EDT0210
ausgegeben.
Ist im L-Modus die Arbeitsdatei leer und wurde ein Zeilenbereich (keine Zeichenfolgevariable) angegeben, wird die Meldung EDT2903
ausgegeben.
Enthält die zuzuweisende Zeichenfolge Zeichen, die im angegebenen Zeichensatz ungültig sind, werden diese durch ein Ersatzzeichen ersetzt, sofern ein solches spezifiziert ist (siehe @PAR SUBSTITUTION-CHARACTER), andernfalls unterbleibt die Zuweisung und die Anweisung wird mit der Fehlermeldung EDT5453
abgebrochen.
Ist der zuzuweisende Wert länger als 4096 Bytes, werden nur die ersten 4096 Bytes als Wert zugewiesen und die Meldung EDT2403
wird ausgegeben.
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.
Details zu S-Listenvariablen können dem Handbuch SDF-P [7] entnommen werden.