Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

Beispiel für Ausgabe in eine S-Variable

Das Beispiel zeigt die Ausgabe in S-Variablen in Abhängigkeit von der Privilegierung des Aufrufers. Es stellt keine reale Situation dar, sondern ist ein konstruiertes, vereinfachtes Beispiel zur Veranschaulichung der Problematik.

Folgende Privilegierungen sind gegeben:

  • Fall 1: der Aufrufer hat nur das Privileg STD-PROCESSING

  • Fall 2: der Aufrufer hat die Privilegien STD-PROCESSING sowie SUBSYSTEM-MANAGEMENT oder OPERATING

  • Fall 3: der Aufrufer hat nicht das Privileg STD-PROCESSING, aber mindestens eines der Privilegien SUBSYSTEM-MANAGEMENT oder OPERATING

Folgende Konfiguration soll gegeben sein:

  • das lokale Subsystem AA V04.5 ist im Zustand CREATED

  • das globale, nicht-privilegierte Subsystem AA V04.6 ist im Zustand CREATED; es ist eine Task angeschlossen (TID=00010054, TSN=0123)

  • das globale, privilegierte Subsystem XX V01.0 ist im Zustand CREATED: es ist eine Task angeschlossen (TID=0002006F, TSN=0BFC)

  • das globale, privilegierte Subsystem XX V02.0 ist im Zustand IN-DELETE: es sind zwei Tasks angeschlossen (TID=00070015, TSN=0CMM und TID=00010057, TSN=00AP)

Es wird eine zusammengesetzte Variable vom Typ Liste mit dem Namen DATA deklariert, und dem S-Variablenstrom SYSINF zugewiesen.

/DECLARE-VARIABLE VAR-NAME=DATA(TYPE=*STRUCTURE),
MULTIPLE-ELEMENTS=*LIST

/ASSIGN-STREAM STREAM-NAME=SYSINF,TO=*VAT(VAR-NAME=DATA)

/SHOW-STREAM-ASSIGNMENT

       STREAM-NAME   = SYSINF
        ASSIGN-LEVEL = 0

        DESTINATION  = *VARIABLE

          VARIABLE-NAME = DATA
               VAR-MODE = *EXTEND

          RETURN-VARIABLE-NAME = *NONE

          CONTROL-VAR-NAME = *NONE
          RET-CONTROL-VAR-NAME = *NONE

    STREAM-NAME   = SYSMSG

    :

Fall 1:
der Aufrufer hat nur das Privileg STD-PROCESSING

/SHOW-SUBSYSTEM-STATUS SUBSYSTEM-NAME=*ALL ————————————————————————————  (1)
% LOCAL SUBSYSTEM AA     /V04.5    IS CREATED

% SUBSYSTEM AA     /V04.6    IS CREATED

/SHOW-VAR DATA ————————————————————————————————————————————————————————  (2)
   :

   DATA(*LIST).SUBSYS-TYPE='*LOC'

   DATA(*LIST).SUBSYS-NAME='AA'
   DATA(*LIST).SUBSYS-VERSION='04.5'

   DATA(*LIST).SUBSYS-STA='*CREATED'

   DATA(*LIST).SUBSYS-TYPE='*GLB'
   DATA(*LIST).SUBSYS-NAME='AA'

   DATA(*LIST).SUBSYS-VERSION='04.6'

   DATA(*LIST).SUBSYS-STA='*CREATED'

/SHOW-SUBSYSTEM-STATUS SUBSYSTEM-NAME=AA ——————————————————————————————  (3)
% LOCAL SUBSYSTEM AA     /V04.5    IS CREATED

% SUBSYSTEM AA      /V04.6    IS CREATED

/SHOW-VAR DATA ————————————————————————————————————————————————————————  (4)

   :
   DATA(*LIST).SUBSYS-TYPE='*LOC'

   DATA(*LIST).SUBSYS-NAME='AA'

   DATA(*LIST).SUBSYS-VERSION='04.5'
   DATA(*LIST).SUBSYS-STA='*CREATED'

   DATA(*LIST).SUBSYS-TYPE='*GLB'

   DATA(*LIST).SUBSYS-NAME='AA'
   DATA(*LIST).SUBSYS-VERSION='04.6'

   DATA(*LIST).SUBSYS-STA='*CREATED'

(1)

Es werden der Name, die Version und der Status aller globalen, nicht-privilegierten sowie aller lokalen Subsysteme nach SYSOUT ausgegeben. Im konstruierten Beispiel ist nur das globale Subsystem AA nicht-privilegiert. Es wird - zusammen mit dem lokalen Subsystem AA - ausgegeben.

(2)

Die Ausgabe in der S-Variablen DATA enthält explizit den Subsystem-Typ „global“ oder „lokal“.

(3)

Die Beschränkung in der Ausgabe auf das Subsystem AA ergibt keine geänderte Ausgabe nach SYSOUT im Vergleich zu (1).

(4)

Die Beschränkung in der Ausgabe auf das Subsystem AA ergibt keine geänderte Ausgabe in die S-Variable DATA im Vergleich zu (2).


Fall 2:
der Aufrufer hat die Privilegien STD-PROCESSING sowie SUBSYSTEM-MANAGEMENT und/oder OPERATING

/SHOW-SUBSYSTEM-STATUS SUBSYSTEM-NAME=*ALL ————————————————————————————  (5)

% LOCAL SUBSYSTEM AA     /V04.5    IS CREATED

% SUBSYSTEM AA     /V04.6    IS CREATED
% SUBSYSTEM XX     /V01.0    IS CREATED

% SUBSYSTEM XX     /V02.0    IS IN DELETE / WAIT-DISCON

/SHOW-VAR DATA ————————————————————————————————————————————————————————  (6)
   :

   DATA(*LIST).SUBSYS-TYPE='*LOC'

   DATA(*LIST).SUBSYS-NAME='AA'
   DATA(*LIST).SUBSYS-VERSION='04.5'

   DATA(*LIST).SUBSYS-STA='*CREATED'

   DATA(*LIST).SUBSYS-TYPE='*GLB'
   DATA(*LIST).SUBSYS-NAME='AA'

   DATA(*LIST).SUBSYS-VERSION='04.6'

   DATA(*LIST).SUBSYS-STA='*CREATED'
   DATA(*LIST).SUBSYS-TYPE='*GLB'

   DATA(*LIST).SUBSYS-NAME='XX'

   DATA(*LIST).SUBSYS-VERSION='01.0'
   DATA(*LIST).SUBSYS-STA='*CREATED'

   DATA(*LIST).SUBSYS-TYPE='*GLB'

   DATA(*LIST).SUBSYS-NAME='XX'

   DATA(*LIST).SUBSYS-VERSION='02.0'
   DATA(*LIST).SUBSYS-STA='*IN-DELETE'

   DATA(*LIST).SUBSYS-INT-STA='WAIT-DISCON'

/SHOW-SUBSYSTEM-STATUS SUBSYSTEM-NAME=AA ——————————————————————————————  (7)

% LOCAL SUBSYSTEM AA     /V04.5    IS CREATED

% SUBSYSTEM AA     /V04.6    IS USED BY 1 TASK
% TASKID 00010054

% TSN        0123

%   4 CONNECTIONS SINCE STARTUP
/SHOW-VAR DATA ————————————————————————————————————————————————————————  (8)

   :

   DATA(*LIST).SUBSYS-TYPE='*LOC'
   DATA(*LIST).SUBSYS-NAME='AA'

   DATA(*LIST).SUBSYS-VERSION='04.5'

   DATA(*LIST).SUBSYS-STA='*CREATED'
   DATA(*LIST).SUBSYS-TYPE='*GLB'

   DATA(*LIST).SUBSYS-NAME='AA'

   DATA(*LIST).SUBSYS-VERSION='04.6'
   DATA(*LIST).SUBSYS-STA='*CREATED'

   DATA(*LIST).CONN-NUM-SINCE-START=4

   DATA(*LIST).USED-TASK-LIST(*LIST).TID='00010054'
   DATA(*LIST).USED-TASK-LIST(*LIST).TSN='0123'

(5)

Es werden der Name, die Version und der Status aller globalen sowie aller lokalen Subsysteme nach SYSOUT ausgegeben. Es wird also über alle Subsysteme informiert, die im laufenden System geladen sind. Im konstruierten Beispiel sind das die globalen Subsysteme XX (privilegiert, in zwei Versionen) und AA (nicht-privilegiert) sowie das lokale Subsystem AA.

(6)

Die Ausgabe in der S-Variablen DATA enthält explizit den Subsystem-Typ „global“ oder „lokal“.

(7)

Die Beschränkung in der Ausgabe auf das Subsystem AA ergibt folgende Änderungen im Vergleich zu (1): Sind an ein Subsystem Tasks angeschlossen, werden sie mit ihrer TSN und TID angezeigt. Die Anzahl aller Tasks, die seit Startup an dieses Subsystem konnektiert waren, wird ebenfalls nach SYSOUT ausgegeben.

(8)

Die Ausgabe der Subsysteme AA in die S-Variable DATA enthält die gleichen Informationen wie in der SYSOUT-Ausgabe, ergänzt durch den Subsystem-Typ „global“ oder „lokal“.

Fall 3:
der Aufrufer hat nicht das Privileg STD-PROCESSING, aber mindestens eines der Privilegien SUBSYSTEM-MANAGEMENT oder OPERATING

/SHOW-SUBSYSTEM-STATUS SUBSYSTEM-NAME=*ALL ————————————————————————————  (9)
% SUBSYSTEM AA     /V04.6    IS CREATED

% SUBSYSTEM XX     /V01.0    IS CREATED

% SUBSYSTEM XX     /V02.0    IS IN DELETE / WAIT-CLS-CTRL
/SHOW-VAR DATA ———————————————————————————————————————————————————————— (10)

   :

   DATA(*LIST).SUBSYS-TYPE='*GLB'
   DATA(*LIST).SUBSYS-NAME='AA'

   DATA(*LIST).SUBSYS-VERSION='04.6'

   DATA(*LIST).SUBSYS-STA='*CREATED'
   DATA(*LIST).SUBSYS-TYPE='*GLB'

   DATA(*LIST).SUBSYS-NAME='XX'

   DATA(*LIST).SUBSYS-VERSION='01.0'
   DATA(*LIST).SUBSYS-STA='*CREATED'

   DATA(*LIST).SUBSYS-TYPE='*GLB'

   DATA(*LIST).SUBSYS-NAME='XX'
   DATA(*LIST).SUBSYS-VERSION='02.0'

   DATA(*LIST).SUBSYS-STA='*IN-DELETE'

   DATA(*LIST).SUBSYS-INT-STA='WAIT-CLS-CTRL'
/SHOW-SUBSYSTEM-STATUS SUBSYSTEM-NAME=XX —————————————————————————————— (11)

% SUBSYSTEM XX     /V0.0    IS USED BY 1 TASK

% TASKID 0002006F

% TSN        0BFC

%   7 CONNECTIONS SINCE STARTUP

% SUBSYSTEM XX     /V02.0    IS USED BY 2 TASKS
% TASKID 00070015 00010057

% TSN        0CMM     0OAP

%                         IS IN DELETE / WAIT-DISCON

% 12 CONNECTIONS SINCE STARTUP

/SHOW-VAR DATA ———————————————————————————————————————————————————————— (12)

   :

   DATA(*LIST).SUBSYS-TYPE='*GLB'
   DATA(*LIST).SUBSYS-NAME='XX'

   DATA(*LIST).SUBSYS-VERSION='01.0'

   DATA(*LIST).SUBSYS-STA='*CREATED'
   DATA(*LIST).CONN-NUM-SINCE-START=7

   DATA(*LIST).USED-TASK-LIST(1).TID='0002006F'

   DATA(*LIST).USED-TASK-LIST(1).TSN='0BFC'
   DATA(*LIST).SUBSYS-TYPE='*GLB'

   DATA(*LIST).SUBSYS-NAME='XX'

   DATA(*LIST).SUBSYS-VERSION='02.0'
   DATA(*LIST).SUBSYS-STA='*IN-DELETE'

   DATA(*LIST).SUBSYS-INT-STA='WAIT-DISCON'

   DATA(*LIST).CONN-NUM-SINCE-START=12
   DATA(*LIST).USED-TASK-LIST(*LIST).TID='00070015'

   DATA(*LIST).USED-TASK-LIST(*LIST).TSN='0CMM'

   DATA(*LIST).USED-TASK-LIST(*LIST).TID='00010057'

   DATA(*LIST).USED-TASK-LIST(*LIST).TSN='0OAP'

(9)

Es werden der Name, die Version und der Status aller globalen Subsysteme nach SYSOUT ausgegeben. Im konstruierten Beispiel sind das die globalen Subsysteme XX (privilegiert, in zwei Versionen) und AA (nicht-privilegiert).

(10)

Die Ausgabe in die S-Variable DATA beinhaltet die gleichen Informationen wie nach SYSOUT.

(11)

Die Beschränkung in der Ausgabe auf das Subsystem XX ergibt folgende Änderungen im Vergleich zu (9): Sind an ein Subsystem Tasks angeschlossen, werden sie mit ihrer TSN und TID angezeigt. Die Anzahl aller Tasks, die seit Startup an dieses Subsystem konnektiert waren, wird ebenfalls nach SYSOUT ausgegeben.

(12)

Die Ausgabe der Subsysteme XX in die S-Variable DATA enthält die gleichen Informationen wie in der SYSOUT-Ausgabe, ergänzt durch den Subsystem-Typ „global“.