Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

SRMUINF - Benutzerinformationen aus dem Benutzerkatalog lesen

&pagelevel(3)&pagelevel

Allgemeines

Anwendungsgebiet:

Abfragen und Zugriff zu Listen und Tabellen; siehe "Abfragen und Zugriff zu Listen und Tabellen"

Makrotyp:

S-Typ, MF-Format 3: D-/C-/E-/L-/M-Form;

siehe "S-Typ-Makroaufrufe"


Für jeden Anwender (jede Benutzerkennung) wird von einem Benutzerverwalter ein Eintrag im Benutzerkatalog angelegt. Der Eintrag enthält u.a.:

  • Benutzerkennung, Passwortberechtigung

  • Angaben zu Systemressourcen, die der Anwender in Anspruch nehmen kann(CPU-Zeit, Speicherplatz,...)

  • besondere Rechte des Anwenders (privilegierter Zugriff,...)

  • Daten für die Abrechnung (Accounting)

  • Versandinformationen (Mail- und E-Mail-Adressen)

Makrobeschreibung

Der Makro SRMUINF liest Daten aus dem Benutzerkatalog und überträgt sie in einen vorher spezifizierten Bereich. Je nach Angabe werden die Daten für die Abrechnung (Accounting), die anwenderspezifischen Daten oder der gesamte Eintrag einer Kennung aus dem Benutzerkatalog ausgegeben. Es ist zu unterscheiden:

  • Makroaufruf unter der Kennung des nichtprivilegierten Benutzers:Es werden nur Daten des eigenen Eintrages ausgegeben.

  • Makroaufruf unter der Kennung eines Benutzerverwalters (standardmäßig die Benutzerkennung TSOS oder bei Einsatz des Software-Produkts SECOS eine Benutzerkennung mit dem Privileg USER-ADMINISTRATION):

    • Ausgabe der Daten des eigenen Eintrags

    • Ausgabe der Daten weiterer Anwender (einzeln für jeden beliebigen Anwender oder der Reihe nach für mehrere Anwender)

  • Makroaufruf unter der Kennung eines Benutzergruppenverwalters (nur möglich, wenn das Software-Produkt SECOS eingesetzt wird). Es können nur Daten eines lokalen Pubsets ausgegeben werden:

    • Ausgabe der Daten des eigenen Eintrags

    • Ausgabe der Daten weiterer Anwender, die zur Gruppe bzw. einer Untergruppe des Benutzergruppenverwalters gehören

Makroaufrufformat und Operandenbeschreibung

SRMUINF

INFO=*USER / *ALL / *ACCOUNT / *POSIX / *EMAIL / *ALL_EMAIL / adr / (r)

[,AREA@=adr / (r)]

[,AREA#=länge / adr / (r)]

,USERID=*OWN / *FIRST / 'userid' / adr / (r)

,PVS=*HOME / 'catid' / adr / (r)

,ACTION=*READ / *READNXT / *READSEQ / adr / (r)

,XPAND={PARAM / OUTPUT,DATA={ALL / USER / ACCOUNT / POSIX / EMAIL / ALL_EMAIL} }

,MF=D / C / L / M / E

[,PARAM=adr / (r)]

,PREFIX=S / p

,MACID=RMV / macid

In der nachfolgenden Operandenbeschreibung sind die Operanden alphabetisch geordnet.

ACTION=
gibt an, ob zu der angegebenen oder der darauf folgenden Benutzerkennung Daten aus dem Benutzerkatalog gelesen werden sollen.

*READ
Der Eintrag für die angegebene Benutzerkennung wird aus dem Benutzerkatalog gelesen.

*READNXT
Es wird der Eintrag aus dem Benutzerkatalog gelesen, der der angegebenen Benutzerkennung folgt.
Dieser Wert kann nur unter der Kennung eines Benutzerverwalters mit dem Systemprivileg „USER-ADMINISTRATION“ angegeben werden (dieses Systemprivileg ist standardmäßig der Benutzerkennung TSOS oder bei Einsatz des Software-Produkts SECOS einer entsprechend privilegierten Benutzerkennung zugeordnet).

*READSEQ
Es wird der Eintrag aus dem Benutzerkatalog gelesen, der der angegebenen Benutzerkennung folgt. Zusätzlich wird die Benutzerkennung, deren Eintrag gelesen wurde, in die Parameterliste als Operand USERID eingetragen.

adr
symbolische Adresse (Name) des Feldes mit der Information, welcher Eintrag aus dem Benutzerkatalog übergeben werden soll.
Diese Angabe ist nur zusammen mit MF=M erlaubt.

(r)
r = Register mit dem Adresswert, an dem der Operandenwert des Operanden ACTION steht. Diese Angabe ist nur zusammen mit MF=M erlaubt.

AREA@=
bezeichnet die Adresse eines Ausgabebereichs, in den die Daten aus dem Benutzerkatalog übertragen werden.

adr
symbolische Adresse (Name) des Bereichs.

(r)
r = Register mit dem Adresswert, an dem die Ausgabe erfolgen soll. Diese Angabe ist nur zusammen mit MF=M erlaubt.

AREA#=
gibt die Länge des Ausgabebereiches an. Die Mindestlänge ist von der Menge der auszugebenden Informationen abhängig. Die Menge wird durch den Operanden INFO bestimmt. Bei unzureichender Längenangabe wird der Eintrag abgeschnitten (Returncode aa = X'10').

länge
ganzzahliger Wert, der die Länge des Ausgabebereiches in Byte angibt. länge kann die Werte 0, 1, ..., 4096 annehmen.

adr
symbolische Adresse (Name) eines Feldes, das die Länge des Ausgabebereiches enthält. Diese Angabe ist nur zusammen mit MF=M erlaubt.

(r)
r = Register mit dem Adresswert, an dem die Länge des Ausgabebereiches steht. Diese Angabe ist nur zusammen mit MF=M erlaubt.

DATA=
steuert die Beschreibung von spezifischen Ausgabebereichen. Der Operand wird nur bei Angabe von XPAND=OUTPUT ausgewertet.

ALL
Der vollständige Eintrag für die angegebene Benutzerkennung wird beschrieben, jedoch ohne den EMAIL- und POSIX-spezifischen Teil.

USER
Der anwenderspezifische Teil (Anwenderteil ohne Abrechnungsnummern) des Eintrags für die angegebene Benutzerkennung wird beschrieben.

ACCOUNT
Der abrechnungsspezifische Teil (nur Abrechnungsnummern) des Eintrags für die angegebene Benutzerkennung wird beschrieben.

POSIX

Der POSIX-spezifische Teil des Eintrags für die angegebene Benutzerkennung wird beschrieben.

EMAIL
Der EMAIL-spezifische Teil des Eintrags für die angegebene Benutzerkennung wird beschrieben.

ALL_EMAIL
Der vollständige Eintrag mit EMAIL-spezifischem Teil für die angegebene Benutzerkennung wird beschrieben, jedoch ohne den POSIX-spezifischen Teil.

INFO=
gibt die Menge der zu übertragenden Daten aus dem Eintrag des Benutzerkatalogs an.

*USER
Es werden nur die anwenderspezifischen Daten übertragen.

*ALL
Es wird der vollständige Eintrag übertragen, jedoch ohne den EMAIL- und POSIX-spezifischen Teil.

*ACCOUNT
Es werden nur die abrechnungsspezifischen Daten übertragen.

*POSIX
Es werden die POSIX-spezifischen Daten übertragen. Die selben Daten werden mit dem Kommando SHOW-POSIX-USER-ATTRIBUTES ausgegeben.

*EMAIL
Es wird der Bereich mit den Empfängeradressen für E-Mails übertragen.

*ALL_EMAIL
Es wird der vollständige Eintrag und der Bereich mit den Empfängeradressen für E-Mails übertragen, jedoch nicht der POSIX-spezifische Teil.

adr
symbolische Adresse (Name) eines Feldes, das die Information enthält, welche Menge von Daten übertragen werden sollen. Diese Angabe ist nur zusammen mit MF=M erlaubt.

(r)
r = Register mit dem Adresswert, an dem der Operandenwert des Operanden INFO steht. Diese Angabe ist nur zusammen mit MF=M erlaubt.

MF=
Zur allgemeinen Beschreibung des Operanden MF, der dazugehörenden Operandenwerte und der evtl. nachfolgenden Operanden (z.B. PREFIX, MACID und PARAM) siehe Abschnitt „S-Typ-Makroaufrufe“ und aus dem Aufrufformat ersichtlich.

Bei der C-Form, D-Form oder M-Form des Makroaufrufs kann ein Präfix PREFIX und bei der C-Form oder M-Form zusätzlich eine Macid MACID angegeben werden (siehe Abschnitt „S-Typ-Makroaufrufe“).

PVS=
bezeichnet den PVS (Public Volume Set; „Pubset“), von dem ein Eintrag aus dem Benutzerkatalog gelesen werden soll.

*HOME
Der gewünschte Eintrag ist im Benutzerkatalog des HOME-Pubset enthalten.

'catid'
catid = Katalogkennung des PVS, der den Benutzerkatalog mit dem gewünschten Eintrag enthält.
Maximale Länge der Zeichenkette catid = 4 Zeichen.

adr
symbolische Adresse (Name) eines 4 Byte langen Feldes, das die catid enthält. Kürzere catids sind mit Leerzeichen aufzufüllen. Diese Angabe ist nur zusammen mit MF=M erlaubt.

(r)
r = Register mit dem Adresswert, an dem die 4 Byte lange catid steht. Kürzere catids sind mit Leerzeichen aufzufüllen. Diese Angabe ist nur zusammen mit MF=M erlaubt.

USERID=
bezeichnet die Benutzerkennung, deren Eintrag aus dem angegebenen Benutzerkatalog angefordert wird.

*OWN
Es wird der Eintrag der eigenen Benutzerkennung (Benutzerkennung des Aufrufers) ausgegeben.

*FIRST
Es wird der erste Eintrag des angegebenen Benutzerkatalogs ausgegeben.
Der Wert darf nur zusammen mit dem Operanden ACTION=*READNXT und der dazugehörenden Privilegierung aufgerufen werden.

'userid'
userid = Benutzerkennung.
Maximale Länge der Zeichenkette userid = 8 Zeichen.
Welche Benutzerkennungen angegeben werden dürfen, hängt von den Privilegien des Aufrufers ab. Folgende Fälle sind zu unterscheiden:

  • Aufrufer ist ein nichtprivilegierter Benutzer:Zulässig ist nur die eigene Benutzerkennung.

  • Aufrufer ist ein Benutzergruppenverwalter (nur möglich bei Einsatz des Software-Produkts SECOS):

    Erlaubt ist jede Benutzerkennung aus der Benutzergruppe des Aufrufers oder einer darunter liegenden Gruppe.

  • Aufrufer arbeitet als Benutzerverwalter mit dem Systemprivileg „USER-ADMINIST-RATION“ (standardmäßig die Benutzerkennung TSOS oder bei Einsatz des Soft-ware-Produkts SECOS die entsprechend privilegierte Benutzerkennung):Zulässig ist jede Benutzerkennung auf dem angegebenen PVS.

adr
symbolische Adresse (Name) eines 8 Byte langen Feldes, das die userid enthält. Diese Angabe ist nur zusammen mit MF=M erlaubt.

(r)
r = Register mit dem Adresswert von adr. Diese Angabe ist nur zusammen mit MF=M erlaubt.

XPAND=
bestimmt, welcher Datenbereich bearbeitet werden soll.

PARAM
Es wird der Aufruf-Datenbereich bearbeitet.

OUTPUT
Es wird die Ausgabe eines speziellen Ausgabebereiches gewünscht. Der Operand DATA muss angegeben werden. Er bestimmt das Ausgabelayout der gewünschten Informationen.

Rückinformation und Fehleranzeigen

Standardheader:

+---------------+
|   |   |   |   |
| | |b|b| | |a|a|
+---------------+

Über die Ausführung des Makros SRMUINF wird im Standardheader folgender gegliederter Returncode übergeben (aa=primärer RC, bb=sekundärer RC):

X'bb'

X'aa'

Erläuterung

X'00'

X'00'

Normale Ausführung.

X'01'

X'04'

Operandenfehler oder unzureichende Privilegierung.

X'00'

X'08'

Es existiert kein Eintrag unter dieser Kennung.

X'80'

X'0C'

Auf den Pubset (PVS) kann nicht zugegriffen werden.

X'00'

X'10'

Der Eintrag für die Benutzerkennung wurde nicht vollständig ausgegeben
(unzureichende Längenangabe).

Weitere Returncodes, deren Bedeutung durch Konvention makroübergreifend festgelegt ist, können der Tabelle „Standard-Returncodes“ (Standardheader) entnommen werden.

Layout der DSECT (1)

           SRMUINF MF=D,PREFIX=A
1          STACK  PRINT
1          PRINT  NOGEN
2                *,##### PREFIX=A, MACID=RMV #####
1          #INTF REFTYPE=REQUEST,INTNAME=SRMUINF,INTCOMP=001
1 ARMVPL     DS    0F          BEGIN of PARAMETERAREA
1          FHDR  MF=(C,ARMV),EQUATES=NO
2          DS    0A
2 ARMVFHE  DS    0XL8            0   GENERAL PARAMETER AREA HEADER
2 *
2 ARMVIFID DS    0A              0   INTERFACE IDENTIFIER
2 ARMVFCTU DS    AL2             0   FUNCTION UNIT NUMBER
2 *                                  BIT 15    HEADER FLAG BIT,
2 *                                  MUST BE RESET UNTIL FURTHER NOTICE
2 *                                  BIT 14-12 UNUSED, MUST BE RESET
2 *                                  BIT 11-0  REAL FUNCTION UNIT NUMBER
2 ARMVFCT  DS    AL1             2   FUNCTION NUMBER
2 ARMVFCTV DS    AL1             3   FUNCTION INTERFACE VERSION NUMBER
2 *
2 ARMVRET  DS    0A              4   GENERAL RETURN CODE
2 ARMVSRET DS    0AL2            4   SUB RETURN CODE
2 ARMVSR2  DS    AL1             4   SUB RETURN CODE 2
2 ARMVSR1  DS    AL1             5   SUB RETURN CODE 1
2 ARMVMRET DS    0AL2            6   MAIN RETURN CODE
2 ARMVMR2  DS    AL1             6   MAIN RETURN CODE 2
2 ARMVMR1  DS    AL1             7   MAIN RETURN CODE 1
2 ARMVFHL  EQU   8               8   GENERAL OPERAND LIST HEADER LENGTH
2 *
1 *                                       ADDITIONAL MAIN RETURN-CODES:
1 *
1 ARMVMOK  EQU   0                        REQUEST SERVICED
1 ARMVPAER EQU   4                        PARAMETER ERROR
1 ARMVENFO EQU   8                        ENTRY NOT FOUND
1 ARMVPNAC EQU   12                       PVS NOT ACCESSIBLE
1 ARMVRSER EQU   16                       RESOURCE NOT AVAILABLE
1 *
1          DS    XL4                      UNUSED
1 ARMVUSRD DS    CL8                      USERID SPECIFIED
1 ARMVINFO DS    AL1                      INFO-TYPE
1 ARMVIALL EQU   1                          ALL REQUIRED
1 ARMVIUSR EQU   2                          USER INFO REQUIRED
1 ARMVIACI EQU   3                          ACCOUNT INFO REQUIRED
1 ARMVIPOS EQU   4                          POSIX INFO REQUIRED
1 ARMVIEMA EQU   5                          EMAIL INFO REQUIRED
1 ARMVIAEM EQU   6                          ALL&EMAIL INFO REQUIRED
1 ARMVACOD DS    AL1                      ACTION CODE
1 ARMVACRD EQU   1                          READ
1 ARMVACRN EQU   2                          READ NEXT
1 ARMVPVS  DS    CL4                      PVS CATID
1 ARMVHOME EQU   C'#'                     PVS IS HOME
1          DS    CL4                      FOR CAT-ID EXTENSION
1          DS    XL2                      UNUSED1
1 ARMVARE@ DS    A                        AREA ADDRESS
1 ARMVARE# DS    AL2                      AREA LENGTH
1          DS    XL2                      UNUSED2
1 *
1 ARMVPL#  EQU   *-ARMVPL                 P/L LENGTH

Layout der DSECT (2)

           SRMUINF MF=D,XPAND=OUTPUT,DATA=ALL_EMAIL
1          STACK  PRINT
1          PRINT  NOGEN
2                *,##### PREFIX=S, MACID=RMV #####
1 ***************************************************************
1 *        INFORMATION ON JOB                                   *
1 ***************************************************************
1 SRMVJOB  DS    0F
1 SRMVUSER DS    CL8                     USER-IDENTIFICATION
1 SRMVSVR  DS    CL1                     SEVER INDICATOR
1 SRMVSVRY EQU   1                       - USERID HAS BEEN SEVERED
1 SRMVSVRN EQU   2                       - USERID NOT      SEVERED
1 SRMVPVG  DS    CL1                     USER PRIVILEGE CODE
1 SRMVPVGA EQU   1                       - SYSTEM ADMINISTRATOR
1 SRMVPVGN EQU   2                       - NORMAL USER
1 SRMVPASS DS    CL8                     USER'S PASSWORD
1 SRMVENCR DS    CL1                     PASSWORD-ENCRYPTION
1 SRMVENUN EQU   0                       - UNDEFINED
1 SRMVENNO EQU   1                       - NO ENCRYPTION
1 SRMVESCA EQU   2                       - ENCRYPT-MODE SCA
1 SRMVEOLD EQU   3                       - ENCRYPT-MODE OLD
1 SRMVENOP EQU   4                       - NO PASSWORD
1          DS    XL1                     NOT USED
1 SRMVJOB#  EQU   *-SRMVJOB                 LENGTH OF JOB PART
1 ***************************************************************
1 *        INFORMATION ON DMS                                   *
1 ***************************************************************
1 SRMVDMSD DS    0F
1 SRMVSPLI DS    F                       SPACE LIMIT
1 SRMVSPUS DS    F                       SPACE USED
1          DS    XL2                     RESERVED
1 SRMVIPSE DS    CL1                     PUBLIC SPACE EXCESS IND
1 SRMVIPEN EQU   1                       - NOT PERMITTED
1 SRMVIPET EQU   2                       - TEMPORARY
1 SRMVIPEY EQU   3                       - PERMITTED
1 SRMVTPIG DS    CL1                     TPIGNORE  INDICATOR
1 SRMVTPIY EQU   1                       - YES : ERROR MESSAGES IGNORED
1 SRMVTPIN EQU   2                       - NO  : NO TPIGNORE PRIVILEGE
1 SRMVTPIR EQU   3                       - READ: ERROR MSG IGNORED-INPU
1 SRMVTPIB EQU   4                       - BLP : BY-PASS-LABEL
1 SRMVTPIA EQU   5                       - ALL : BLP AND YES PRIVILEGES
1 SRMVDFCT DS    CL4                     DEFAULT CAT-ID OF PVS
1          DS    CL4                     NOT USED
1 SRMVTSPL DS    F                       TEMP SPACE LIMIT
1 SRMVTSPU DS    F                       TEMP SPACE USED
1 SRMVFILI DS    F                       FILE LIMIT
1 SRMVFILA DS    F                       FILE AMOUNT
1 SRMVJVLI DS    F                       JV LIMIT
1 SRMVJVA  DS    F                       JV AMOUNT
1 SRMVEXHC DS    CL8                     EXTENDED HOST CODE
1 SRMVDMTR DS    X                       DMS TUNING RESOURCES
1 SRMVDTRN EQU   1                           NONE
1 SRMVDTRP EQU   2                           PAGEABLE
1 SRMVDTRR EQU   3                           RESIDENT
1 SRMVPAL  DS    X                       PHYSICAL ALLOCATION
1 SRMVPALN EQU   1                           NOT-ALLOWED
1 SRMVPALA EQU   2                           ALLOWED
1          DS    XL2                       UNUSED
1 SRMVUS1L DS    F                       S1 LEVEL USED
1 SRMVUS2L DS    F                       S2 LEVEL USED
1 SRMVDMCL DS    CL8                     DEFAULT MANAGEMENT CLASS
1 SRMVDSCL DS    CL8                     DEFAULT STORAGE CLASS
1 *                                      PERM SPACE LIMIT
1 SRMVLTOT DS    F                         TOTAL SPACE
1 SRMVLSTD DS    F                         S0 LEVEL SPACE
1 SRMVLSHP DS    F                         HIGH PERF SPACE
1 SRMVLSVP DS    F                         VERY HIGH PERF SPACE
1 SRMVLSHA DS    F                         HIGH AVAIL SPACE
1 *                                      TEMP SPACE LIMIT
1 SRMVLTMP DS    F                         TOTAL SPACE
1 SRMVLTHP DS    F                         HIGH PERF SPACE
1 SRMVLTVP DS    F                         VERY HIGH PERF SPACE
1 *                                      WORK SPACE LIMIT
1 SRMVLWRK DS    F                         TOTAL SPACE
1 SRMVLWHP DS    F                         HIGH PERF SPACE
1 SRMVLWVP DS    F                         VERY HIGH PERF SPACE
1 *                                      PERM SPACE USED
1 SRMVUTOT DS    F                         TOTAL SPACE
1 SRMVUSTD DS    F                         S0 LEVEL SPACE
1 SRMVUSHP DS    F                         HIGH PERF SPACE
1 SRMVUSVP DS    F                         VERY HIGH PERF SPACE
1 SRMVUSHA DS    F                         HIGH AVAIL SPACE
1 *                                      TEMP SPACE USED
1 SRMVUTMP DS    F                         TOTAL SPACE
1 SRMVUTHP DS    F                         HIGH PERF SPACE
1 SRMVUTVP DS    F                         VERY HIGH PERF SPACE
1 *                                      WORK SPACE USED
1 SRMVUWRK DS    F                         TOTAL SPACE
1 SRMVUWHP DS    F                         HIGH PERF SPACE
1 SRMVUWVP DS    F                         VERY HIGH PERF SPACE
1 SRMVCYSL DS    F                       CRYPTO SESSION LIMIT
1 SRMVCYSU DS    F                       CRYPTO SESSION USED
1 SRMVNST  DS    X                       NET-STORAGE USAGE
1 SRMVNSTN EQU   1                           NOT-ALLOWED
1 SRMVNSTA EQU   2                           ALLOWED 
1          DS    XL3                     UNUSED
1 SRMVNCS  DS    CL8                     NET-CODED-CHAR-SET
1 SRMVDMS# EQU   *-SRMVDMSD                LENGTH OF DMS PART
1 ***************************************************************
1 *        INFORMATION ON TASK/PROGRAM                          *
1 ***************************************************************
1 SRMVTASK DS    0F
1 SRMVUSW  DS    CL4                     USER'S SWITCHES
1 SRMVAIDR DS    CL1                     AID'S READ VALUE
1 SRMVAIDW DS    CL1                     AID'S WRITE VALUE
1 SRMVTPRV DS    CL1                     TESTPRIV INDICATOR
1 SRMVTPRY EQU   1                       - TESTPRIV IS YES
1 SRMVTPRN EQU   2                       - TESTPRIV IS NO
1 SRMVADS2 DS    CL2                     ADDRSPACE VALUE
1 SRMVADIT DS    CL1                     AUDIT INDICATOR
1 SRMVADTY EQU   1                       - AUDIT ALLOWED
1 SRMVADTN EQU   2                       - AUDIT NOT ALLOWED
1 SRMVPSW  DS    CL1                     PSWORD CMD'S RIGHT
1 SRMVPSWY EQU   1                       - PSWORD YES
1 SRMVPSWM EQU   2                       - PSWORD MOD
1 SRMVPSWN EQU   3                       - PSWORD NO
1 SRMVCSMP DS    CL1                     CSTMP-MACRO INDICATOR
1 SRMVCSMY EQU   1                       - CSTMP-MACRO ALLOWED
1 SRMVCSMN EQU   2                       - CSTMP-MACRO NOT ALLOWED
1 SRMVHWAU DS    CL1                     HARDWARE-AUDIT INDICATOR
1 SRMVHWAUY EQU   1                       - HW-AUDIT ALLOWED
1 SRMVHWAUN EQU   2                       - HW-AUDIT NOT ALLOWED
1 SRMVLKAU DS    CL1                     LINKAGE-AUDIT INDICATOR
1 SRMVLKAUY EQU   1                       - LNK-AUDIT ALLOWED
1 SRMVLKAUN EQU   2                       - LNK-AUDIT NOT ALLOWED
1 SRMVPRID DS    CL54                    PROFILE ID
1 SRMVRPAG DS    H                       NB OF RESIDENT PAGES
1 SRMVDTKL DS    CL1                     DEFAULT-MESSAGE-LANGUAGE
1 SRMVMSGS DS    CL1                     DEFAULT-MESSAGE-SEARCH
1 SRMVSTSK EQU   X'01'                   -TASK
1 SRMVSALL EQU   X'02'                   -*ALL
1 SRMVADRS DS    F                       ADDRSPACE VALUE
1 SRMVRPGS DS    F                       NB OF RESIDENT PAGES
1 SRMVTSK# EQU   *-SRMVTASK                LENGTH OF TASK PART
1 ***************************************************************
1 *        INFORMATION ON SPOOL                                 *
1 ***************************************************************
1 SRMVSPOL DS    0F
1          DS    CL8                     UNUSED
1 SRMVMAIL DS    CL64                    MAILING ADDRESS
1 SRMVSPL# EQU   *-SRMVSPOL                LENGTH OF SPOOL PART
1 *-
1 SRMVUSR# EQU   *-SRMVJOB                 LENGTH OF USER PART
1 ***************************************************************
1 *        INFORMATION ON ACCOUNTING                            *
1 ***************************************************************
1 SRMVACCT DS    0F
1 SRMVNBAC DS    H                       NUMBER OF ACCOUNT-NB
1 SRMVMARC DS    H                       MAXIMUM OF ACCOUNT RECORDS
1 *-
1 SRMVACC# EQU   *-SRMVACCT                LENGTH OF ACC GLOBAL INF.
1 *-
1 *-       INFORMATION ON ACCOUNT ENTRY
1 *-
1 SRMVACCE DS    0F
1 SRMVACT  DS    CL8                     ACCOUNT NUMBER
1 SRMVCPU  DS    F                       CPU  TIME REMAINING
1 SRMVNTL  DS    CL1                     NTL INFORMATION
1 SRMVNTLY EQU   1                       - NTL ALLOWED
1 SRMVNTLN EQU   2                       - NTL NOT ALLOWED
1 SRMVEXP  DS    CL1                     EXPRESS  INFORMATION
1 SRMVEXPY EQU   1                       - EXPRESS  ALLOWED
1 SRMVEXPN EQU   2                       - EXPRESS  NOT ALLOWED
1 SRMVSCLA DS    CL1                     SPOOL-OUT CLASS
1 SRMVPRI  DS    CL1                     HIGHEST  PRIORITY PERMITTED
1 SRMVINHD DS    CL1                     INHIBIT  DEACTIVATION IND
1 SRMVINHY EQU   1                       - INHIBIT DEACTIVATION ALLOW
1 SRMVINHN EQU   2                       - INHIBIT DEACT NOT    ALLOW
1 SRMVTYPL DS    CL1                     UPPER LIMIT OF TASK TYPE
1 SRMVTYST EQU   1                       - STD
1 SRMVTYTP EQU   2                       - TP
1 SRMVTYSY EQU   3                       - SYS
1 **************************************************************/
1 * INFORMATION FOR POSIX  VERSION V11.2                       */
1 **************************************************************/
1 SRMVPOA  DS    X                       POSIX ACCOUNTNUMBER
1 SRMVPOAY EQU   1                       1: YES POSIX ACCOUNTNUMBER
1 SRMVPOAN EQU   2                       2: NO  POSIX ACCOUNTNUMBER
1 SRMVDAC  DS    X                       DEFAULT ACCOUNTNUMBER
1 SRMVDACY EQU   1                       - YES DEFAULT ACCOUNTNUMBER
1 SRMVDACN EQU   2                       - NO DEFAULT ACCOUNTNUMBER
1 SRMVACE# EQU   *-SRMVACCE                LENGTH OF ONE ACC ENTRY
1 *-
1          DS    CL(59*SRMVACE#)
1 *
1 SRMVACM# EQU   60*SRMVACE#+SRMVACC#      MAX LENGTH OF ALL ACCOUNT
1 *-                                     ENTRIES,GLOBAL INF
SRMVALL#   EQU   *-SRMVJOB                 MAX LENGTH OF A ALL ENTRY
***************************************************************
*        INFORMATION ON EMAIL V17.0                           *
***************************************************************
SRMVEMA    DS    0F
SRMVEMAL   DS    H                         EMAIL-LENGTH
SRMVEMAI   DS    CL1800                    EMAIL
SRMVEMA#   EQU   *-SRMVEMA                 LENGTH OF EMAIL-INFO
1 *-
1 SRMVETR# EQU   SRMVUSR#+SRMVACM#         MAX LENGTH OF A USER ENTRY

Beispiel zur Ausgabe von Benutzerkennung und Default-Pubset

SRMUINF  START
SRMUINF  RMODE ANY
SRMUINF  AMODE ANY
         GPARMOD 31
         BALR  3,0
         BCTR  3,0
         BCTR  3,0
         USING SRMUINF,3
         SRMUINF AREA@=SRMAUS,AREA#=SRMVLLLL,INFO=*ALL,MF=M ------------(1)
         SRMUINF MF=E,PARAM=SRMPL --------------------------------------(2)
         CLI   SRMVMR1,SRMVMOK          * ERROR IN CALL ?
         BNE   ERROR
         MVC   USERID,SRMVUSER          * CALL OK; OUTPUT USER ID
         MVC   DEFPUB,SRMVDFCT          * AND DEFAULT PUBSET
         WROUT MSGAUSG,0
         B     ENDE
ERROR    EQU   *                        * ERROR IN CALL (RC <> 0);
         UNPK  RC(5),SRMVMR1(2)         * OUTPUT RETURN CODE
         TR    RC(4),TAB
         WROUT MSGFEHL,0
* Definitions *
TAB      DS    CL240
         DC    C'0123456789ABCDEF'
*
* Parameter area SRMUINF macro
         DS    0F
SRMPL    SRMUINF MF=C
         ORG SRMVPL
         SRMUINF MF=L
         ORG
*
* Output area SRMUINF macro
         DS    0F
SRMAUS   SRMUINF MF=C,XPAND=OUTPUT,DATA=ALL
*
* Output area if call OK
MSGAUSG  DS    0H
         DC    Y(MSGAUSGL)
         DC    CL3' '
         DC    C'SRMUINF: User ID: '
USERID   DS    CL8
         DC    C'   , Default pubset: '
DEFPUB   DS    CL4
         DC    C'<'
MSGAUSGL EQU   *-MSGAUSG
*
* Output area if call contains error
MSGFEHL  DS    0H
         DC    Y(MSGFEHLL)
         DC    CL3' '
         DC    C'Error in SRMUINF: RC = '
RC       DS    CL5
MSGFEHLL EQU   *-MSGFEHL-1
SRMVLLLL DC    Y(SRMVETR#)              * LENGTH OF OUTPUT AREA
         END
               =AL4(SRMAUS)

Ablaufprotokoll

/start-assembh
%  BLS0500 PROGRAM 'ASSEMBH', VERSION '<ver>' OF '<date>' LOADED
%  ASS6010 <ver> OF BS2000 ASSEMBH  READY 
//compile source=*library-element(macexmp.lib,srmuinf), -
//        compiler-action=module-generation(module-format=llm), -
//        module-library=macexmp.lib, -
//        listing=parameters(output=*library-element(macexmp.lib,srmuinf))
%  ASS6011 ASSEMBLY TIME: 438 MSEC
%  ASS6018 0 FLAGS, 0 PRIVILEGED FLAGS, 0 MNOTES
%  ASS6019 HIGHEST ERROR-WEIGHT: NO ERRORS
%  ASS6006 LISTING GENERATOR TIME: 151 MSEC
//end
%  ASS6012 END OF ASSEMBH
/start-executable-program library=macexmp.lib,element-or-symbol=srmuinf
%  BLS0523 ELEMENT 'SRMUINF', VERSION '@' FROM LIBRARY
   ':2OSG:$QM212.MACEXMP.LIB' IN PROCESS
%  BLS0524 LLM 'SRMUINF', VERSION ' ' OF '<date> <time>' LOADED
SRMUINF: User ID: QM212      , Default pubset: 2OSG<

(1) Datenbereich initialisieren

(2) Lesen der Benutzerinformation