Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

@GETVAR - Lesen einer S-Variablen

&pagelevel(3)&pagelevel

Die Anweisung @GETVAR gibt den Wert einer S-Variablen aus, schreibt ihn in eine Arbeitsdatei oder weist ihn einer Variablen zu.

Operation

Operanden

F-Modus, L-Modus

@GETVAR

{ string [={ line | svarex | ivar }] | SYSEDT } [,CODE=name]

string

Zeichenfolge, die einen gültigen S-Variablen-Namen angibt. Der Name
muss den syntaktischen Regeln für einen S-Variablen-Namen genügen,
diese werden aber vom EDT nicht vollständig überprüft.

line

Nummer der Zeile, in die der Wert der S-Variablen geschrieben werden soll.

Hat der Wert der S-Variablen nicht den Typ STRING, wird die Anweisung mit
der Meldung EDT5342 abgewiesen.

svarex

Zeichenfolgevariable, in die der Wert der S-Variablen geschrieben werden
soll.

Hat der Wert der S-Variablen nicht den Typ STRING, wird die Anweisung mit
der Meldung EDT5342 abgewiesen.

ivar

Ganzzahlvariable (#I0..#I20), in die der Inhalt der S-Variablen
übernommen werden soll.

Hat der Wert der S-Variablen nicht den Typ INTEGER, wird die Anweisung
mit der Meldung EDT5342 abgewiesen.

SYSEDT

Den Zeichenfolgevariablen #S00..#S20 werden die Inhalte der S-Variablen
SYSEDT-S00..SYSEDT-S20 zugewiesen, falls sie existieren und ihr
jeweiliger Wert den Typ STRING hat. Für nicht existierende S-Variable,
S-Variable ohne Wert oder mit anderem Typ wird kein Fehler gemeldet,
sondern die
zugehörige Zeichenfolgevariable wird nicht verändert.

name

Name des Zeichensatzes, in dem der Wert der S-Variablen interpretiert
werden soll. Ist der Wert der S-Variablen nicht vom Typ STRING wird die
Angabe ignoriert. Der Zeichensatz muss zulässig sein, sonst wird die
Anweisung mit der Meldung EDT4980 abgewiesen. Ist der Operand nicht
angegeben, wird der Wert der S-Variablen im Zeichensatz EDF041
interpretiert (siehe Abschnitt „Zeichensätze“).

Ist weder line noch svarex noch ivar angegeben, wird der Wert der S-Variablen im Dialogbetrieb nach SYSOUT und im Stapelbetrieb nach SYSLST ausgegeben.

Ist die S-Variable nicht vorhanden, wird die Meldung EDT5274 ausgegeben, hat sie keinen Wert, wird die Meldung EDT5340 ausgegeben (außer bei SYSEDT).

Wenn eine Zeile angelegt wird, deren Nummer größer als die bisherige höchste Zeilennummer ist, wird die aktuelle Zeilennummer verändert.

Enthält die Variable eine ungültige Bytefolge (in Unicode-Zeichensätzen möglich), wird sie nicht eingelesen und die Meldung EDT5454 ausgegeben.

Erfolgt die Zuweisung an eine Zeichenfolgevariable, so erhält diese den durch name explizit oder implizit angegebenen Zeichensatz.
Beim Einfügen in eine Arbeitsdatei wird der Wert in den Zeichensatz der Arbeitsdatei konvertiert. Ist die Arbeitsdatei leer und hat noch den Zeichensatz *NONE, erhält die Arbeitsdatei den durch name explizit oder implizit angegebenen Zeichensatz.
Enthält die zuzuweisende Zeichenfolge Zeichen, die nicht in den Zeichensatz der Arbeitsdatei konvertierbar sind, werden diese durch ein Ersatzzeichen ersetzt, sofern ein solches spezifiziert ist (siehe @PAR SUBSTITUTION-CHARACTER), andernfalls unterbleibt die Zuweisung und die Fehlermeldung EDT5453 wird ausgegeben.

Details zu S-Variablen können dem Handbuch SDF [6] entnommen werden.