Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

DPSHSHP Information über die aktuelle Shared-Pubset-Konfiguration ausgeben

&pagelevel(3)&pagelevel

DPSHSHP informiert über die aktuellen Sharer eines Shared Pubsets. Die gelieferten Informationen entsprechen der Ausgabe des Kommandos SHOW-SHARED-PUBSET.
Die gewünschte Information wird in einem Ausgabebereich hinterlegt. Der Anwender muss mit dem Operanden OUTAREA einen genügend großen Ausgabebereich mit den erforderlichen Zugriffsrechten zur Verfügung stellen.

Bei Angabe von INFO=*ALL oder INFO=*XCS oder INFO=*CCS ist der für die Ausgabe erforderliche Speicherplatz von der Anzahl der existierenden Shared Pubsets sowie von der Anzahl der Sharer pro Shared Pubset abhängig. Für einen Sharer eines Shared Pubsets werden 24 Bytes benötigt (maximal kann ein Shared Pubset 16 Sharer haben).

Der vom Aufrufer der Schnittstelle bereitgestellte Ausgabe-Bereich muss wenigstens so lang sein, dass er einen einzigen Sharer eines einzigen Shared Pubsets aufnehmen kann; dafür werden benötigt: 8 Bytes für den Header des Ausgabe-Bereiches, 8 Bytes für den Header der Shared-Pubset-Konfiguration, und 24 Bytes für wenigstens einen Sharer (insgesamt also 40 Bytes). Eine geringere Länge des Ausgabe-Bereiches wird mit dem Main-Returncode DPSHOISF („not minimal output length“) abgewiesen.

Wenn der vom Aufrufer spezifizierte Ausgabe-Bereich zu klein ist, um die zur Verfügung gestellten Informationen aufzunehmen, wird der gegenwärtig benötigte Wert für die Länge des Ausgabe-Bereiches im Feld DPSHRQLG („requested length of output area“) als Ausgabe-Parameter zurückgegeben. Ebenso wird ein Returncode gesetzt, der auf diese Situation hinweist (Main-Returncode DPSHOTSH („not enough space for info“)).

Liefert der Aufruf der Schnittstelle DPSHSHP aufgrund eines unerwarteten Returncodes des Watchdog-Mechanismus keine Ausgabeinformationen, so wird dieser Watchdog-Returncode als Ausgabe-Feld in der Parameterliste hinterlegt (im Feld DPSHWDRC („watchdog return code“)). Das Returncode-Feld der Schnittstelle DPSHSHP enthält in diesem Fall den Main-Returncode DPSHINTE („internal error“).


Abhängigkeiten zwischen den Operanden

Wenn INFO=*ONEPVS angegeben ist, dann muss auch die Identifikation eines Pubsets durch Spezifikation des Eingabe-Parameters PUBSET angegeben werden.

Format und Operandenbeschreibung

Operation

Operanden

DPSHSHP

 MF=D / C / L / M / E

 ,XPAND=PARAM / OUTPUT

 ,VERSION=1 / <integer 1..3>

 ,INFO=*ALL / *ONEPVS / *XCS / *CCS

 ,PUBSET=<var: char:4> / (<reg: pointer>)

 ,OUTAREA=(adresse, länge)
            adresse: <var:pointer> / (<reg: pointer>)
            länge: <integer 1..32767> /
            <var:int:4> / (<reg:int:4>)

 [,PREFIX=D / p]

 [,MACID=PSH / macid]

 [,PARAM=<name 1..27>]


MF
Mit dem Operanden MF wird die Art der Makrogenerierung bestimmt.
In Abhängigkeit von den Operandenwerten für MF unterscheidet man fünf Formen des Makroaufrufs:

Operanden

 MF=L [,operand1 ,...,operandn]
 MF=M ,operand1 ,...,operandn  [,PREFIX=M / p] [,MACID=PSH / macid]
 MF=D ,XPAND=PARAM/OUTPUT[,PREFIX=M / p]

 MF=C ,XPAND=PARAM/OUTPUT[,PREFIX=M / p] [,MACID=PSH / macid]

 MF=E [,PARAM=<name 1..27>]


Zu den MF-Operandenwerten siehe Handbuch „Makroaufrufe an den Ablaufteil“ [12].


XPAND = PARAM / OUTPUT
Bestimmt, ob eine DSECT erzeugt werden soll. Angabe nur in Verbindung mit MF=D/C.

PARAM
Die Strukturbeschreibung der Parameterliste wird erzeugt.
Sie enthält die Input-Parameter und als festen Teil der Ausgabe ggf. die tatsächlich benötigte Länge eines Ausgabebereiches.

OUTPUT
Die Informationen über aktuell existierende Shared Pubsets wird in dem beim Aufruf spezifizierten Ausgabebereich abgelegt. Das Ausgabeformat wird durch XPAND=OUTPUT erzeugt.

VERSION = 1 / <integer 1..3>
Legt die gewünschte Schnittstellen-Version fest. Die Schnittstellen-Version 1 (derzeit die einzige Version) wird seit MSCF V15.0 unterstützt.

1
Voreinstellung. Die Schnittstellen-Version 1 wird generiert.

<integer 1..3>
Direktangabe der gewünschten Schnittstellen-Version.

INFO = *ALL / *ONEPVS / *XCS / *CCS
Legt fest, für welche Shared-Pubsets Informationen angefordert werden.

*ALL
Es sollen Informationen über alle existierenden Shared-Pubsets geliefert werden.

*ONEPVS
Es soll über ein ausgewähltes Shared-Pubset informiert werden. Die Pubset-Identifikation erfolgt im Operanden PUBSET.

*XCS
Über alle XCS-Pubsets sollen Informationen ausgegeben werden.

*CCS
Über alle CCS-Pubsets sollen Informationen ausgegeben werden.

PUBSET =
Wird nur bei INFO=*ONEPVS ausgewertet.
Identifikation eines Pubset .

OUTAREA = (adresse, länge)
Legt den Ausgabebereich fest, in den die Shared Pubsets ausgegeben wird.

adresse: <var: pointer> / (<reg: pointer>)

<var: pointer>
Der Ausgabebereich muss auf Wortgrenze ausgerichtet und beschreibbar sein. Alternativ sind folgende 2 Angaben möglich:

  • Adresse des Ausgabebereichs als direkte Adressangabe in der Form A(bereich).

  • Name eines Feldes mit der Adresse des Ausgabebereichs. Angabe nur in Verbindung mit MF=M.

(<reg: pointer>)
Register mit der Adresse des Ausgabebereichs. Angabe nur in Verbindung mit MF=M.

länge: <integer 1..32767> / <var: int:4> / (<reg: int:4>)
Legt die Länge des Ausgabebereichs fest. Wird ein zu kleiner Ausgabebereich angegeben, so wird die erforderliche Größe im Feld Input_Param.DPSHRQLG der Parameterliste hinterlegt.

<integer 1..32767>
Länge des Ausgabebereichs in Bytes als Direktangabe.
In Assembler muss eine symbolische Angabe in eckige Klammern eingeschlossen werden.

<var: int:4>
Name eines Feldes mit der Längenangabe als Integer-Zahl; Feldlänge = 4 Byte. Angabe nur in Verbindung mit MF=M.

<reg: int:4>
Register, das die Längenangabe für den Ausgabebereich enthält. Angabe nur in Verbindung mit MF=M.


Returncodes

Über den Erfolg der Ausführung des Makros DPHSHP wird im Standardheader folgender Returncode übergeben (cc = SUBCODE2, bb = SUBCODE1, aaaa = MAINCODE):

Standardheader: 




ccbbaaaa
X'cc'X'bb'X'aaaa'Erläuterung

X'00'X'0000'Kein Fehler

X'40'X'0001'Parameterliste ist nicht zugreifbar

X'40'X'0002'Ausgabe-Adresse nicht zugreifbar

X40'X'0003'Ausgabe-Adresse nicht auf Wortgrenze ausgerichtet

X'40'X'0004'Parameter INFO ist ungültig

X'40'X'0005'PUBSET-Operand ungültig

X'40'X'0006'Speicherplatz reicht für angeforderte Information nicht aus

X'40'X'0007'Speicherplatz reicht für minimale Ausgabeinformation nicht aus

X'40'X'0008'Es existieren keine Shared Pubsets

X'40'X'0009'Subsystem MSCF ist nicht verfügbar

X'20'X'000A'Interner Fehler

X'01'X'FFFF'Schnittstellen-Fehler, falsche Einheit oder Funktions-Nummer

X'03'X'FFFF'Version nicht unterstützt


Tabelle 8: DPSHSHP-Makro: Returncodes


Layout des Parameterbereichs

           DPSHSHP MF=D,XPAND=PARAM,VERSION=1
1          MFTST MF=D,PREFIX=D,MACID=PSH,ALIGN=F,                    C
1                DMACID=PSH,SUPPORT=(E,D,C,M,L),DNAME=DPSHPAR
2 DPSHPAR  DSECT ,
2                *,##### PREFIX=D, MACID=PSH #####
1 *   DPSHSHP parameter area
1 DPSHFHDR FHDR  MF=(C,MCSI),EQUATES=NO                 Standardheader
2 DPSHFHDR DS    0A
2 DPSHFHE  DS    0XL8           0  GENERAL PARAMETER AREA HEADER
2 *
2 DPSHIFID DS    0A             0  INTERFACE IDENTIFIER
2 DPSHFCTU 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 DPSHFCT  DS    AL1            2  FUNCTION NUMBER
2 DPSHFCTV DS    AL1            3  FUNCTION INTERFACE VERSION NUMBER
2 *
2 DPSHRET  DS    0A             4  GENERAL RETURN CODE
2 DPSHSRET DS    0AL2           4  SUB RETURN CODE
2 DPSHSR2  DS    AL1            4  SUB RETURN CODE 2
2 DPSHSR1  DS    AL1            5  SUB RETURN CODE 1
2 DPSHMRET DS    0AL2           6  MAIN RETURN CODE
2 DPSHMR2  DS    AL1            6  MAIN RETURN CODE 2
2 DPSHMR1  DS    AL1            7  MAIN RETURN CODE 1
2 DPSHFHL  EQU   8              8  GENERAL OPERAND LIST HEADER LENGTH
2 *
1 *   main return codes
1 DPSHNOER EQU   0                       no error
1 DPSHPLNA EQU   1                       parameterlist not accessible 
1 DPSHONAC EQU   2                       output area not accessible
1 DPSHONAL EQU   3                       output area not aligned
1 DPSHINFI EQU   4                       invalid INFO parameter
1 DPSHINVP EQU   5                       invalid PUBSET parameter
1 DPSHOTSH EQU   6                       not enough space for info
1 DPSHOISF EQU   7                       not minimal output length
1 DPSHNSHP EQU   8                       no shared pubsets
1 DPSHMNAV EQU   9                       subsystem MSCF not available 
1 DPSHINTE EQU   10                      internal error
1 *
1 DPSHINFO DS    FL1                     par.INFO
1 *   values for operand INFO
1 DPSHALLP EQU   1                       info for all shared pubsets
1 DPSHONEP EQU   2                       info for one shared pubset
1 DPSHXCSP EQU   3                       info for all XCS pubsets
1 DPSHCCSP EQU   4                       info for all CCS pubsets
1 *
1 DPSHRSV1 DS    XL3                     reserved - first
1 DPSHPBID DS    CL4                     par. PUBSET
1 DPSHARAD DS    A                       address of output area
1 DPSHARLG DS    F                       length of output area
1 DPSHRSV2 DS    XL4                     reserved - second
1 DPSHRQLG DS    F                       req. length of output area
1 DPSHWDRC DS    F                       watchdog return code
1 DPSH#    EQU   *-DPSHFHDR


Layout des Ausgabebereichs

           DPSHSHP MF=D,XPAND=OUTPUT
1          MFTST MF=D,PREFIX=D,MACID=PSH,ALIGN=F,                    C
1                DMACID=PSH,SUPPORT=(E,D,C,M,L),DNAME=PSHOUT
2 DPSHOUT  DSECT ,
2                *,##### PREFIX=D, MACID=PSH #####
1 *   output area layout
1 DPSHNSPV DS    F                      number of spvs
1 DPSHTLTH DS    F                      total length
1 *
1 DPSHCONF DS    0XL392                 configuration entry
1 DPSHNOSH DS    H                      number of sharer
1 DPSHRESV DS    XL2                    reserved bytes
1 DPSHSPVS DS    CL4                    spvs catid
1 DPSHSHAR DS    0XL24                  sharer data of pubset
1 DPSHHNAM DS    CL8                    sharer host name
1 DPSHHCTI DS    CL4                    sharer home catid
1 DPSHBSVR DS    CL3                    sharer bs version
1 DPSHBSSV DS    CL1                    sharer bs subversion
1 DPSHESYS DS    CL3                    sharer ext sysid
1 DPSHSYSI DS    X                      sharer sysid
1 DPSHSTYP DS    FL1                    sharer type
1 *   values for output SHARER TYPE
1 DPSHTUDF EQU   0                      undefined sharer type
1 DPSHTMAS EQU   1                      sharer is pubset master
1 DPSHTSLV EQU   2                      sharer is pubset slave
1 DPSHTBAM EQU   3                      sharer is pubset backup master 
1 DPSHSTAT DS    FL1                    sharer state
1 *   values for output SHARER STATE
1 DPSHSUDF EQU   0                      undefined sharer state
1 DPSHSACT EQU   1                      sharer state active
1 DPSHSCRS EQU   2                      sharer state crashed
1 DPSHSEXC EQU   3                      sharer state excat
1 DPSHSDPR EQU   4                      sharer state disc prot error
1 DPSHSHUT EQU   5                      sharer state shutdown
1 DPSHSMCH EQU   6                      sharer state master change
1 DPSHSRDE EQU   7                      sharer state disc read error
1 DPSHSWRE EQU   8                      sharer state disc write error
1 DPSHRES3 DS    XL2                    reserved - third
           DS    15XL24
1 DPSHSHAR# EQU   16
1 *
1 DPSHOUTPUT# EQU  *-DPSHNSPV