Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

SHOW-VARIABLE-ATTRIBUTES Variablenattribute ausgeben

&pagelevel(4)&pagelevel

Anwendungsgebiet: PROCEDURE

Kommandobeschreibung

Das Kommando SHOW-VARIABLE-ATTRIBUTES informiert über die Attribute der angegebenen Variablen. Die Ausgabe erfolgt nach SYSOUT (oder S-Variable / S-Variablenstrom) oder nach SYSLST.
Die Attribute umfassen Name der Variablen, Anfangswert, Datentyp, einfache oder zusammengesetzte Variable usw. Die Attribute werden mit dem Kommando /DECLARE-
VARIABLE oder per Voreinstellung bei der Erzeugung der Variablen festgelegt.

Format

SHOW-VARIABLE-ATTRIBUTES

VARIABLE-NAME = *ALL / <composed-name 1..255> /<structured-name 1..20 with-wild(40)> / *LIST(...)

*LIST(...)

LIST-NAME = <composed-name 1..255>

,FROM-INDEX = *FIRST / *LAST / <integer 1..2147483647>

,NUMBER-OF-ELEMENTS = 1 / *REST / <integer 1..2147483647>

,INFORMATION = *NAME / *VARIABLE-ATTRIBUTES-ONLY / *ALL-ATTRIBUTES

,ATTACHED-INFORMATION = *NO / *YES

,OUTPUT = *SYSOUT / *SYSLST

Operandenbeschreibung

VARIABLE-NAME =
Name der Variablen, deren Attribute ausgegeben werden sollen.

VARIABLE-NAME = *ALL
Alle prozedurlokalen, sichtbaren Variablen.

VARIABLE-NAME = <composed-name 1...255>
Name der Variablen, deren Attribute ausgegeben werden sollen.

VARIABLE-NAME = <structured-name 1...20 with-wildcards(40)>
Bezeichnung einer oder mehrerer Variablen unter Benutzung von Musterzeichen im Namen.

VARIABLE-NAME = *LIST(...)
Es sollen die Attribute der Elemente einer Listenvariablen ausgegeben werden.

LIST-NAME = <composed-name 1..255>
Name der Listenvariable.

FROM-INDEX = *FIRST / *LAST / <integer 1..2147483647>
Index des Elementes der Listenvariablen, mit dem die Ausgabe beginnen soll. *FIRST: Die Ausgabe beginnt mit dem ersten Element der Liste; Voreinstellung.
Die Angabe *LAST gibt genau die Attribute des letztes Elements der Liste aus. Der Operand NUMBER-OF-ELEMENTS wird in diesem Fall ignoriert.

NUMBER-OF-ELEMENTS = 1 / *REST / <integer 1..2147483647>
Anzahl der Listenelemente, deren Attribute ausgegeben werden sollen. Voreinstellung: Die Attribute eines Elements werden ausgegeben.
Die Angabe *REST gibt die Attribute aller Elemente vom angegebenen Startelement (Operand FROM-INDEX) bis zum letzten Element der Liste aus.

INFORMATION =
Bestimmt den Umfang der auszugebenden Information.

INFORMATION = *NAME
Nur der Name der Variablen wird ausgegeben.

INFORMATION = *VARIABLE-ATTRIBUTES-ONLY
Es werden alle Attribute ausgegeben, die mit dem Kommando DECLARE-VARIABLE spezifiziert wurden.

INFORMATION = *ALL-ATTRIBUTES
Es werden alle Attribute ausgegeben, die mit dem Kommando DECLARE-VARIABLE spezifiziert wurden. Zusätzlich werden die Namen der Elemente der Variablen aufgelistet.

ATTACHED-INFORMATION =
Bestimmt, ob die Attribute der Variablenelemente ausgegeben werden sollen.

ATTACHED-INFORMATION = *NO
Es werden nur die Attribute der Variablen ausgegeben.

ATTACHED-INFORMATION = *YES
Die Attribute der Variablen und der Variablenelemente werden ausgegeben.

OUTPUT =
Bestimmt, ob die Informationen nach SYSOUT oder nach SYSLST ausgegeben werden.

OUTPUT = *SYSOUT
Die Informationen werden nach SYSOUT ausgegeben. Mit den Kommandos ASSIGN-SYSOUT oder ASSIGN-STREAM kann die Ausgabe auch in eine S-Variable erfolgen oder einem S-Variablenstrom zugewiesen werden.

OUTPUT = *SYSLST
Die Informationen werden nur nach SYSLST geschrieben.

Kommando-Returncode

(SC2)SC1MaincodeBedeutung

0CMD0001Ohne Fehler

1CMD0202Syntaxfehler

3CMD2203Falsche Syntaxdatei

32CMD0221Systemfehler (interner Fehler)

64SDP0091Semantikfehler (Variable existiert nicht)
garantierte Meldung: SDP1008

130SDP0099Kein Adressraum mehr verfügbar

Beispiel

/declare-variable S(type = *structure),multiple-elements=*array
/S#81.A = 'First Value'
/S#81.B#5 = 'Second Value'
/S#81.B#27 = 'Third Value'
/S#97.A = 'First Value'
/S#97.B#8 = 'Second Value'
/S#97.B#13 = 'Third Value' 
/show-variable-attributes s,info=*all-attributes,attached-information=*yes
VARIABLE-NAME = S
 TYPE = *STRUCTURE(DEFINITION = *DYNAMIC)
 MULTIPLE-ELEMENTS = *ARRAY(LOWER-BOUND = 0, UPPER-BOUND = 2147483647)
 SCOPE = *PROCEDURE(IMPORT-ALLOWED = *NO)
 CONTAINER = *STD
 CONSTANT = *NO
 VALUE-TYPE = *NONE
 VALUE = 
 NUMBER-OF-ELEMENTS = 2
 ELEM#1 = S#81
 ELEM#2 = S#97
VARIABLE-NAME = S#81
 TYPE = *STRUCTURE(DEFINITION = *DYNAMIC)
 MULTIPLE-ELEMENTS = *NO
 SCOPE = *PROCEDURE(IMPORT-ALLOWED = *NO)
 CONTAINER = *STD
 CONSTANT = *NO
 VALUE-TYPE = *NONE
 VALUE = 
 NUMBER-OF-ELEMENTS = 2
 ELEM#1 = S#81.A
 ELEM#2 = S#81.B
VARIABLE-NAME = S#81.A
 TYPE = *ANY
 MULTIPLE-ELEMENTS = *NO
 SCOPE = *PROCEDURE(IMPORT-ALLOWED = *NO)
 CONTAINER = *STD
 CONSTANT = *NO
 VALUE-TYPE = *STRING
 VALUE = First Value
 NUMBER-OF-ELEMENTS = 0
VARIABLE-NAME = S#81.B
 TYPE = *ANY
 MULTIPLE-ELEMENTS = *ARRAY(LOWER-BOUND = -2147483648, UPPER-BOUND = 
                     2147483647)
 SCOPE = *PROCEDURE(IMPORT-ALLOWED = *NO)
 CONTAINER = *STD
 CONSTANT = *NO
 VALUE-TYPE = *NONE
 VALUE = 
 NUMBER-OF-ELEMENTS = 2
 ELEM#1 = S#81.B#5
 ELEM#2 = S#81.B#27
VARIABLE-NAME = S#81.B#5
 TYPE = *ANY
 MULTIPLE-ELEMENTS = *NO
 SCOPE = *PROCEDURE(IMPORT-ALLOWED = *NO)
 CONTAINER = *STD
 CONSTANT = *NO
 VALUE-TYPE = *STRING
 VALUE = Second Value
 NUMBER-OF-ELEMENTS = 0
VARIABLE-NAME = S#81.B#27
 TYPE = *ANY
 MULTIPLE-ELEMENTS = *NO
 SCOPE = *PROCEDURE(IMPORT-ALLOWED = *NO)
 CONTAINER = *STD
 CONSTANT = *NO
 VALUE-TYPE = *STRING
 VALUE = Third Value
 NUMBER-OF-ELEMENTS = 0
VARIABLE-NAME = S#97
 TYPE = *STRUCTURE(DEFINITION = *DYNAMIC)
 MULTIPLE-ELEMENTS = *NO
 SCOPE = *PROCEDURE(IMPORT-ALLOWED = *NO)
 CONTAINER = *STD
 CONSTANT = *NO
 VALUE-TYPE = *NONE
 VALUE = 
 NUMBER-OF-ELEMENTS = 3
 ELEM#1 = S#97.A
 ELEM#2 = S#97.B
 ELEM#3 = S#97.B13
VARIABLE-NAME = S#97.A
 TYPE = *ANY
 MULTIPLE-ELEMENTS = *NO
 SCOPE = *PROCEDURE(IMPORT-ALLOWED = *NO)
 CONTAINER = *STD
 CONSTANT = *NO
 VALUE-TYPE = *STRING
 VALUE = First Value
 NUMBER-OF-ELEMENTS = 0
VARIABLE-NAME = S#97.B
 TYPE = *ANY
 MULTIPLE-ELEMENTS = *ARRAY(LOWER-BOUND = -2147483648, UPPER-BOUND = 
                     2147483647)
 SCOPE = *PROCEDURE(IMPORT-ALLOWED = *NO)
 CONTAINER = *STD
 CONSTANT = *NO
 VALUE-TYPE = *NONE
 VALUE = 
 NUMBER-OF-ELEMENTS = 1
 ELEM#1 = S#97.B#8
VARIABLE-NAME = S#97.B#8
 TYPE = *ANY
 MULTIPLE-ELEMENTS = *NO
 SCOPE = *PROCEDURE(IMPORT-ALLOWED = *NO)
 CONTAINER = *STD
 CONSTANT = *NO
 VALUE-TYPE = *STRING
 VALUE = Second Value
 NUMBER-OF-ELEMENTS = 0
VARIABLE-NAME = S#97.B13
 TYPE = *ANY
 MULTIPLE-ELEMENTS = *NO
 SCOPE = *PROCEDURE(IMPORT-ALLOWED = *NO)
 CONTAINER = *STD
 CONSTANT = *NO
 VALUE-TYPE = *STRING
 VALUE = Third Value
 NUMBER-OF-ELEMENTS = 0

Bei einer Listenvariablen werden die Elementnamen nicht aufgelistet. Der Elementname ist immer der Variablenname, gefolgt von dem Zeichen „#“ und der (sequenziellen) Elementnummer.Hinweis

Strukturierte Ausgabe

Für die strukturierte Ausgabe in Variablen werden beim Kommando SHOW-VARIABLE-ATTRIBUTES die folgenden Operanden unterstützt:

  • VARIABLE-NAME (alle Werte)

  • INFORMATION (alle Werte)

  • ATTACHED-INFORMATION (alle Werte)

Weitere Informationen, wie z.B. die Bedingungen für die Belegungen der einzelnen Variablen, sind der nachfolgenden Tabelle zu entnehmen.

Ausgabestruktur

Ausgabe-Information

Name der S-Variablen1)

T2)

Inhalt

hat die Variable einen konstanten
Wert (/DECLARE-CONSTANT)

var#.CONSTANT

S

*YES
*NO

Typ des Variablencontainers

var#.CONTAIN

S

<composed-name 1..64>
*STD
*VAR
*JV

Name des Variablencontainers

var#.CONTAIN-NAME

S

<structured-name 1..20>
<filename 1..54>
<string 0..0>

Elementname

var#.ELEM(*LIST)

S

<composed-name 1..255>

Import der Variablen erlaubt

var#.IMP-ALLOW

S

*YES
*NO

Maximale Anzahl (Limit) der
Listelemente

var#.LIM

I

<integer 0..2147483647>

untere Grenze des Arrayindexes

var#.LOWER-BOUND

I

<integer -2147483648..2147483647>

Die Variable ist eine List- oder
eine Arrayvariable oder eine
einfache Variable (*NO)

var#.MULT-ELEM

S

*LIST
*ARRAY
*NO

Anzahl der Variablenelemente

var#.NUM-OF-ELEM

I

<integer 0..2147483647>

Geltungsbereich der Variablen

var#.SCOPE

S

*INC
*PROC
*TASK

Name des Strukturlayouts

var#.STRUCT-DEFI

S

<structured-name 1..20>
*BY-SYSCMD
*DYNAMIC

Variablentyp

var#.TYPE

S

*ANY
*BOOLEAN
*STRING
*INTEGER
*STRUCT

obere Grenze des Arrayindexes

var#.UPPER-BOUND

I

<integer -2147483648..2147483647>

Variablenwert

var#.VALUE

S
I
B

<string 0..4096>
<integer -2147483648..2147483647>
FALSE
TRUE

Typ des Variablenwerts

var#.VALUE-TYPE

S

*NONE
*BOOLEAN
*STRING
*INTEGER

Name der Variablen

var#.VAR-NAME

S

<composed-name 1..255>

1)Die Variablennamen sind alphabetisch geordnet
2)In der Spalte T sind die Datentypen aufgeführt: B = Boolean, I = INTEGER, S = String