Information über Konsolen bzw. berechtigte Benutzerprogramme einholen
Komponente: | BS2000 |
Funktionsbereich: | Konsolen steuern |
Anwendungsbereich: | CONSOLE-MANAGEMENT |
Privilegierung: | OPERATING |
Berechtigungsschlüssel: | @ |
Funktionsbeschreibung
Das Kommando informiert das Operating über
mnemotechnische Gerätenamen von Konsolen oder Berechtigungsnamen berechtigter Benutzerprogramme
Stations- und Prozessornamen verfügbarer berechtigter Benutzerprogramme
Berechtigungsschlüsselmenge
Verfügbarkeit der Konsolen bzw. der berechtigten Benutzerprogramme
die aktuelle Hauptkonsole
Das Kommando unterstützt bei Eingabe aus einer Benutzertask mit dem Privileg OPERATING die strukturierte Ausgabe in S-Variable (siehe „Ausgabe in S-Variable").
Format
SHOW-CONSOLE-STATUS |
Operandenbeschreibung
CONSOLE = *OWN / *ALL(...) / list-poss(216): <alphanum-name 2..2> / <name 4..4>
Auswahl der Konsolen und berechtigten Benutzerprogramme, über die Zustandsinformationen angefordert werden.
CONSOLE = *OWN
Zustandsinformationen sollen für die eigene Konsole ausgegeben werden.
CONSOLE = *ALL(...)
Für alle Konsolen und berechtigte Benutzerprogramme sollen Zustandsinformationen ausgegeben werden.
TYPE = *ANY
Die Informationen werden für alle Konsolen und berechtigte Benutzerprogramme ausgegeben.
TYPE = *PHYSICAL
Die Informationen werden nur für Konsolen ausgegeben.
TYPE = *LOGICAL
Die Informationen werden nur für berechtigte Benutzerprogramme ausgegeben.
STATE = *ANY
Die Informationen werden unabhängig vom Zustand ausgegeben.
STATE = *OPERABLE
Es werden nur Informationen für betriebsbereite Konsolen oder Benutzerprogramme ausgegeben.
STATE = *INOPERABLE
Es werden nur Informationen für nicht betriebsbereite Konsolen oder Benutzerprogramme (Status INOP) ausgegeben.
CONSOLE = list-poss(216): <alphanum-name 2..2> / <name 4..4>
Maximal 216 mnemotechnische Konsolnamen (zweistellig) oder Namen berechtigter Anwendungen (vierstellig) können angegeben werden.
Kommando-Returncode
(SC2) | SC1 | Maincode | Bedeutung |
---|---|---|---|
0 | CMD0001 | Kommando erfolgreich ausgeführt | |
2 | 0 | NBR1074 | Einige der angegebenen Konsolnamen nicht gefunden. Kommando nur teilweise ausgeführt |
1 | CMD0202 | Syntaxfehler im Kommando | |
2 | CMD0198 | Shutdown | |
32 | CMD2009 | Fehler bei der Ausgabe in strukturierte S-Variable | |
64 | CMD0216 | Erforderliche Berechtigung nicht vorhanden | |
64 | NBR1073 | Keinen der angegebenen Konsolnamen gefunden. Kommando nicht ausgeführt |
Hinweise
Im Dialog kann das Kommando mit der [K2] -Taste abgebrochen werden. In diesem Fall wird kein Kommando-Returncode ausgegeben.
Die Information über Stations- und Prozessorname eines berechtigten Benutzerprogramms ermöglicht dem Operating, das entsprechende Benutzerprogramm zu diskonnektieren (Kommando /BCCONN PARTNER=(NEA,<stationsname><processorname>); siehe Handbuch „BCAM“ [2]).
Kommandoergebnisse
Bei jeder Eingabe des Kommandos wird folgende Meldung ausgegeben:
NBR1071 MAIN CONSOLE IS '(&00)'
Bei Einsatz der Funktion Operator-LOGON: Hat die physikalische Hauptkonsole infolge der Nichtverfügbarkeit anderer Konsolen implizit zusätzliche Berechtigungsschlüssel zur Meldungsausgabe erworben, folgt die Meldung:
NBR1054 CONSOLE ‚(&00)‘ IMPLICIT CODES: '(&01)'
Darüber hinaus wird bei physikalischen Konsolen ausgegeben:
NBR1052 CONSOLE '(&00)' ASSIGNED CODES: '(&01)'
Ist der Konsole kein Berechtigungsschlüssel zugewiesen, so enthält der Insert 01 den Wert „NONE“.
Hat sich die Berechtigungsschlüsselmenge der physikalischen Bedienungstation temporär dadurch vergrößert, dass sie andere, nicht verfügbare physikalische Konsolen ersetzt, so wird über die temporär hinzugekommenen Berechtigungsschlüssel mit folgender Meldung informiert:
NBR1053 CONSOLE '(&00)' TEMPORARY CODES: '(&01)'
Bei Einsatz der Funktion Operator-LOGON entfällt die Meldung NBR1053.
Hat sich ein Operator an einer physikalischen Konsole angemeldet, wird seine Operator-Kennung mit folgender Meldung angezeigt:
NBR1078 CONSOLE '(&00)' OPERATOR-ID '(&01)'
Ist eine physikalische Konsole defekt (INOP), mit Kommando /CONSOLE SWITCH, OFF=<mn> abgeschaltet (OFF) oder hat sich kein Operator an ihr angemeldet (INACTIVE), so wird dies durch folgende Meldung angezeigt:
NBR1077 CONSOLE '(&00)' STATES: (&01)
Dabei kann der Insert 01 die Werte „INOP“, „OFF“ oder „INACTIVE“ enthalten. INACTIVE ist nur bei Einsatz der Funktion Operator-LOGON möglich; OFF ist in diesem Fall nicht möglich. Bei Vorliegen des Zustands INOP wird der Zustand INACTIVE nicht angezeigt, während die Kombination von INOP und OFF möglich ist.
Für jedes ausgewählte berechtigte Benutzerprogramm werden die ihm zugewiesenen Berechtigungsschlüssel mit folgender Meldung angezeigt:
NBR1051 APPLICATION '(&00)' CODES: '(&01)'
Ist dem berechtigten Benutzerprogramm kein Berechtigungsschlüssel zugewiesen, so enthält der Insert 01 den Wert „NONE“.
Wenn ein berechtigtes Benutzerprogramm nicht verfügbar ist, so wird folgende Meldung ausgegeben:
NBR1076 APPLICATION '(&00)' STATES: '(&01)'
Dabei kann der Insert 01 den Werte „INOP“ enthalten.
Über angeschlossene berechtigte Benutzerprogramme wird mit folgender Meldung Auskunft erteilt:
NBR1075 APPLICATION '(&00)' PROCESSOR '(&01)' STATION '(&02)'
Hat sich ein Operator an einem Benutzerprogramm mit dynamischen Berechtigungsnamen angemeldet, wird seine Operator-Kennung mit folgender Meldung angezeigt:
NBR1079 APPLICATION '(&00)' OPERATOR-ID '(&01)'
Wurden bei expliziter Angabe von Konsolen oder berechtigten Benutzerprogrammen nicht existierende Namen genannt, so wird für jeden betroffenen Namen die Meldung NBR1072 ausgegeben.
Bei Angabe von CONSOLE=*ALL wird die Anzahl der nicht verfügbaren berechtigten Benutzerprogramme mit folgender Meldung angezeigt:
NBR1058 /SHOW-CONSOLE-STATUS: (&00) FUTHER APPLICATIONS WITH DYNAMICAL
AUTHORIZATION NAMES ARE NOT CONNECTED
Ausgabe in S-Variable
Der Operand CONSOLE des Kommandos legt fest, welche S-Variablen erzeugt werden. Folgende Angaben sind für CONSOLE möglich:
Schreibweise im Kommando | gekürzte Schreibweise in Tabelle |
---|---|
CONSOLE=*ALL | 1 |
CONSOLE=<alphanum-name 2..2> (entspr. Konsole) | 2 |
CONSOLE=<name 4..4> (entspr. Benutzerprogramm) | 3 |
CONSOLE=*OWN | 4 |
Im Kommando können Konsolen und Benutzerprogramme in einer Liste zusammen angegeben werden. In diesem Fall werden alle S-Variablen erzeugt.
Ausgabe-Information | Name der S-Variablen | T | Inhalt | Bedingung |
---|---|---|---|---|
Verfügbarkeit des berechtigten Benutzerprogramms | var(*LIST).APPL(*LIST).CONN-STA | S | *CONN | 1,3 |
Berechtigungsname des berechtigten Benutzerprogramms | var(*LIST).APPL(*LIST).NAME | S | ’’ <application-name> | 1,3 |
Operator-ID (*) | var(*LIST).APPL(*LIST).OPER-ID | S | <operator-id> | 1,3 |
Prozessorname des berechtigten Benutzerprogramms | var(*LIST).APPL(*LIST).PROCESSOR-NAME | S | ’’ | 1,3 |
Berechtigungsschlüssel für berechtigtes Benutzerprogramm | var(*LIST).APPL(*LIST).ROUT-CODE(*LIST) | S | ’’ <routing-code> | 1,3 |
Stationsname des berechtigten Benutzerprogramms | var(*LIST).APPL(*LIST).STATION-NAME | S | ’’ | 1,3 |
Zustand der Konsole | var(*LIST).CONS(*LIST).OPERABLE-STA | S | *INOP | 1,2 |
Operator-ID (*) | var(*LIST).CONS(*LIST).OPER-ID | S | <operator-id> | 1,2 |
Berechtigungsschlüssel für Konsole | var(*LIST).CONS(*LIST).ROUT-CODE(*LIST) | S | ’’ | 1,2 |
mnemotechnischer Gerätename der Konsole | var(*LIST).CONS(*LIST).UNIT | S | <mnemo-name> | 1,2 |
Impliziter Berechtigungsschlüssel | var(*LIST).IMPL-ROUT-CODE(*LIST) | S | <routing-code> | NBCONOPI= |
mnemotechnischer Gerätename der Hauptkonsole | var(*LIST).MAIN-CONS-UNIT | S | <mnemo-name> | |
Berechtigungsschlüssel für Benutzertask mit OPR-Privileg | var(*LIST).TASK(*LIST).ROUT-CODE(*LIST) | S | ’’ <routing-code> | 4 |
TSN der Benutzertask mit OPR-Privileg | var(*LIST).TASK(*LIST).TSN | S | <tsn> | 4 |
(*) | Als Operator-Id werden an physikalischen Konsolen und berechtigten Benutzerprogrammen 8 Leerzeichen ausgegeben, wenn die Funktion ’Operator-LOGON’ nicht eingesetzt ist bzw. wenn sich niemand als Operator angeschlossen hat. Derselbe Inhalt wird auch für berechtigte Benutzerprogramme mit statischen Berechtigungsnamen ausgegeben. |
Beispiele
/decl-var var-name=var(type=*structure),multiple-elem=*list
/exec-cmd (show-console-status console=@002),text-output=*none,strucoutput=var
/show-var var,inf=*par(val=*c-literal)
VAR(*LIST).MAIN-CONS-UNIT = 'C0' VAR(*LIST).APPL(*LIST).NAME = '@002' VAR(*LIST).APPL(*LIST).CONN-STA = '*CONN' VAR(*LIST).APPL(*LIST).STATION-NAME = 'BT200226' VAR(*LIST).APPL(*LIST).PROCESS = 'D016ZE07' VAR(*LIST).APPL(*LIST).OPER-ID = 'TSOS ' VAR(*LIST).APPL(*LIST).ROUT-CODE(*LIST) = ''
/exec-cmd (show-console-status console=C0),text-output=*none,struc-output=var
/show-var var,inf=*par(val=*c-literal)
VAR(*LIST).MAIN-CONS-UNIT = 'C0' VAR(*LIST).CONS(*LIST).UNIT = 'C0' VAR(*LIST).CONS(*LIST).OPERABLE-STA = '*OPERABLE' VAR(*LIST).CONS(*LIST).OPER-ID = ' ' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = '*' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'A' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'B' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'C' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'D' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'E' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'F' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'G' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'H' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'I' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'J' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'K' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'L' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'M' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'N' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'O' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'P' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'Q' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'R' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'S' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'T' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'U' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'V' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'W' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'X' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'Y' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = 'Z' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = '0' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = '1' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = '2' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = '3' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = '4' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = '5' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = '6' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = '7' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = '8' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = '9' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = '$' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = '#' VAR(*LIST).CONS(*LIST).ROUT-CODE(*LIST) = '@