Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

@SET (Format 4) - Werte von Variablen ablegen

&pagelevel(3)&pagelevel

Mit diesem Format der Anweisung @SET kann der Inhalt einer Ganzzahlvariablen, der Name einer Zeichenfolgevariablen oder der Inhalt einer Zeilennummervariablen ab einer bestimmten Spalte in abdruckbarer Form in eine Arbeitsdateizeile oder eine Zeichenfolgevariable eingefügt werden.

Operation

Operanden

F-Modus, L-Modus

@SET

{svarex | lvar} [,col]=CHAR{ivar | svar | lvar1}

svarex

Zeichenfolgevariable (#S0..#S20), in die ein Wert eingefügt werden soll.
Vorhandene Zeichen in den betroffenen Positionen werden überschrieben.

lvar

Zeilennummervariable (#L0..#L20), die die Zeile angibt, in die ein Wert
geschrieben werden soll. Existiert die Zeile noch nicht, wird sie neu angelegt.
Vorhandene Zeichen in den betroffenen Positionen werden überschrieben.

col

Spalte, ab der in die Zeile oder Zeichenfolgevariablen geschrieben werden
soll. Der Standardwert von col ist 1. Liegt col hinter dem Zeilenende, wird
die Zeile bis zur Spalte col mit Leerzeichen aufgefüllt.

CHAR ivar

Ganzzahlvariable (#I0..#I20), deren Inhalt in die Zeile ab der Spalte col
als Zeichenfolge eingefügt werden soll. Die Konvertierung führt zu einer 11
Zeichen langen, abdruckbaren Zahl, wobei das erste Zeichen entweder ein
Leerzeichen oder ein Minuszeichen ist, je nachdem ob die Ganzzahl positiv
oder negativ ist.

CHAR svar

Zeichenfolgevariable (#S00..#S20), deren Name in die angegebene Zeile
oder Zeichenfolgevariable eingefügt werden soll.

CHAR lvar1

Zeilennummervariable, deren Wert in abdruckbarer Form in die
angegebene Zeile oder Zeichenfolgevariable eingefügt werden soll.

Die Konvertierung des Wertes einer Zeilennummervariablen führt immer zu
9 abdruckbaren Zeichen der Form IIII.IIII wobei jedes I eine
abdruckbare Ziffer darstellt. Hierbei werden führende Nullen durch
Leerzeichen ersetzt.

Wird durch das Einfügen die maximale Länge von 32768 überschritten, wird die Anweisung mit der Meldung EDT5474 abgewiesen.

Wird die Information in eine Zeile eingefügt, hängt der Zeichensatz von der Arbeitsdatei ab. Hat die aktuelle Arbeitsdatei bereits einen Zeichensatz, wird der Wert in diesem Zeichensatz eingefügt. Ist die Arbeitsdatei leer und hat sie den Zeichensatz *NONE, erhält sie vor dem Einfügen den Zeichensatz EDF041.

Wird die Information in eine Zeichenfolgevariable eingefügt, wird sie vor dem Einfügen in den Zeichensatz der Zeichenfolgevariablen konvertiert.

Bei dieser Anweisung darf der Anweisungsname ganz entfallen. Im F-Modus darf zusätzlich auch das Anweisungssymbol fehlen.

Beispiel

1.     @SET #L0 = 1 ------------------------------------------------- (01)
1.     @SET #I0 = 123 ----------------------------------------------- (02)
1.     @SET #L0 = CHAR #I0 ------------------------------------------ (03)
1.     @SET #L0 ,13 = CHAR #S0 -------------------------------------- (04)
1.     @SET #L0 ,18 = CHAR #L0 -------------------------------------- (05)
1.     @SET #S0 = CHAR #I0 ------------------------------------------ (06)
1.     @SET #L0 = 47.11 --------------------------------------------- (07)
1.     @SET #S1 = CHAR #L0 ------------------------------------------ (08)
1.     @SET #S2 ,5 = CHAR #S0 --------------------------------------- (09)
1.     @PRINT 1,#S0-#S2 --------------------------------------------- (10)
1.0000  0000000123 #S00    1.0000
  #S00  0000000123
  #S01   47.1100
  #S02     #S00
(1)Der Zeilennummervariablen #L0 wird der Wert 0001.0000 zugewiesen.
(2)Der Ganzzahlvariablen #I0 wird der Wert 123 zugewiesen.
(3)In die Zeile 1 wird ab Spalte 1 die Zeichenfolge ' 0000000123' eingefügt.
(4)In die Zeile 1 wird ab Spalte 13 die Zeichenfolge '#S00' eingefügt.
(5)In die Zeile 1 wird ab Spalte 18 die Zeichenfolge ' 1.0000' eingefügt.
(6)Der Zeichenfolgevariablen #S0 wird der Wert ' 0000000123' zugewiesen.
(7)Der Zeilennummervariablen #L0 wird der Wert 47.11 zugewiesen.
(8)Der Zeichenfolgevariablen #S1 wird der Wert ' 47.1100' zugewiesen.
(9)Der Zeichenfolgevariablen #S2 wird ab Spalte 5 der Wert '#S00' zugewiesen d.h. ihr Wert ist ' #S00'.
(10)Zeile 1 und die Zeichenfolgevariablen #S0..#S2 werden ausgegeben.