Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

ALINF - Informationen über Zugriffslisten anfordern

&pagelevel(3)&pagelevel

Allgemeines

Anwendungsgebiet:

Erweiterung durch Datenräume; siehe "Erweiterung durch Datenräume"

Makrotyp:

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

Der Makro ALINF kann auf allen BS2000-Servern verwendet werden (siehe Abschnitt „Erweiterung durch Datenräume“).

Makrobeschreibung

Der Makro ALINF informiert den Aufrufer darüber, welche ALETs (Access List Entry Tokens) in seiner taskeigenen Zugriffsliste mit einem bestimmten Datenraum korrespondieren. Dabei wird ein Datenraum eindeutig durch seine SPID identifiziert. Existieren ein oder mehrere ALETs für einen Datenraum, wird der erste ALET von ihnen im Feld <PREFIX><MACID>ALET zurückgegeben (mit RETURN=FIRST) bzw. bei weiteren Aufrufen des Makros der jeweils folgende ALET (mit RETURN=NEXT). Durch die Angabe des FROM-Operanden kann der Suchbeginn unabhängig von bereits gefundenen ALETs beliebig festgelegt werden.

Makroaufrufformat und Operandenbeschreibung

ALINF

SPID=spid_adr

,RETURN={
          FIRST |
          NEXT[,FROM=alet_adr / (r)]
        }

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

[,PARAM=adr / (r)]

,PREFIX=N / p

,MACID=VDI / macid

SPID=spid_adr
kennzeichnet einen Datenraum eindeutig im Gesamtsystem. Sie wird beim Anlegen eines Datenraumes vom System vergeben.
spid_adr: Symbolische Adresse (Name) eines Feldes (8 Byte), das die SPID des Datenraumes enthält.

RETURN=
legt fest, welcher der korrespondierenden ALETs im Feld <PREFIX><MACID>ALET zurückgegeben wird.

FIRST
Der erste gefundene ALET, der auf den mit SPID identifizierten Datenraum zeigt, wird im Ausgabefeld <PREFIX><MACID>ALET zurückgegeben.

NEXT
Der nächste gefundene ALET wird zurückgegeben. Ausgangspunkt der Suche ist der ALET, der im Ausgabefeld <PREFIX><MACID>ALET steht. Dieser zuletzt gefundene ALET (entspricht Vorgänger) wird entweder durch einen ALINF-Aufruf mit RETURN=FIRST bestimmt oder durch direkte Angabe im FROM-Operanden. Ist das ALET-Ausgabefeld nicht durch einen früheren Aufruf mit einem Vorgänger belegt und auch der Operand FROM wird nicht angegeben, so beginnt die Suche nach dem nächsten korrespondierenden ALET an unbestimmter Stelle (an einem beliebigen Eintrag in der Zugriffsliste).

FROM=
gibt den ALET an, ab dem nach dem nächsten korrespondierenden ALET gesucht werden soll. Der Wert wird in das Ausgabefeld <PREFIX><MACID>ALET geschrieben und wird vom Makro ALINF als Eingabeoperand (entspricht Vorgänger) bei RETURN=NEXT gelesen. Angabe nur bei MF=M erlaubt.

alet_adr
symbolische Adresse des ALETs, der Vorgänger sein soll

(r)
r = Register mit dem Adresswert von adr

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“. Die gültigen MF-Werte sind zu Beginn der Makrobeschreibung bei „Makrotyp“ angegeben 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“).

Rückinformation und Fehleranzeigen

Standardheader:

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

Über die Ausführung des Makros ALINF wird im Standardheader folgender Returncode übergeben (cc=Subcode2, bb=Subcode1, aaaa=Maincode):

X'cc'

X'bb'

X'aaaa'

Erläuterung

X'00'

X'00'

X'0000'

Funktion erfolgreich ausgeführt.
Aus dem Feld <pre> VDIALET des Datenbereichs kann der gefundene ALET ausgelesen werden.

X'00'

X'00'

X'0001'

Es wurde kein korrespondierender ALET gefunden.

X'00'

X'01'

X'0003'

Fehler im Datenbereich.

X'07'

X'01'

X'0003'

Ungültiger Operand RETURN.

X'08'

X'01'

X'0003'

Ungültiger Operand FROM: Der Operandenwert hat kein ALET-Format.

X'01'

X'01'

X'0004'

Es fehlt der Operand SPID.


X'20'

X'0009'

Interner Fehler.

X'01'

X'40'

X'0005'

Die Angabe des SPID-Operanden ist fehlerhaft:

  • die angegebene Spid korrespondiert mit keinem Datenraum oder

  • der korrespondierende Datenraum ist privilegiert oder

  • der Datenraum liegt in einem fremden Geltungsbereich.

X'02'

X'40'

X'0005'

Die Angabe des SPID-Operanden ist fehlerhaft:
Der korrespondierende Datenraum wurde von einer fremden Domain erzeugt.

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

Beispiel siehe Abschnitt „Erweiterung durch Datenräume“.