Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

DISEI - Ereignisgesteuerte Verarbeitung beenden

&pagelevel(3)&pagelevel

Allgemeines

Anwendungsgebiet:

Ereignissteuerung; siehe "Ereignisgesteuerte Verarbeitung (Eventing)"

Makrotyp:

S-Typ, MF-Format 1: Standardform/L-/E-Form;

siehe "S-Typ-Makroaufrufe"


Makrobeschreibung

Der Makroaufruf DISEI wird benutzt, um die Verwendung der angegebenen Ereigniskennung durch die Task des Aufrufers zu beenden. Die Ereigniskennung wird gelöscht, wenn sie von keiner weiteren Task verwendet wird.

Makroaufrufformat und Operandenbeschreibung

DISEI

{{EINAME=name / EINAMAD={adr / (r)} [,EINAMLN=länge]},SCOPE={LOCAL / GROUP / USER_GROUP /

GLOBAL} /

EIID={adr / (r)}}

[,PARMOD=24 / 31]

[,MF=L / (E,..)]

EINAME=name
gibt den Namen der Ereigniskennung an, die der aufrufende Prozess nicht mehr
verwenden wird. Die Bezeichnung der Ereigniskennung ist nur mit der zusätzlichen Angabe des Operanden SCOPE eindeutig.

EINAMAD=
bezeichnet die Ereigniskennung. Zur eindeutigen Bezeichnung der Ereigniskennung muss zusätzlich der Operand SCOPE angegeben werden.

adr
symbolische Adresse des Feldes, das den Namen der Ereigniskennung enthält

(r)
r = Register, das die Adresse enthält

EINAMLN=

gibt die Länge des Namens der Ereigniskennung in Byte an.
Die Länge muss mindestens 1 Byte sein und darf 54 Byte nicht überschreiten.
Fehlt der Operand, so wird das Längenattribut des EINAMAD-Operanden angenommen, wenn EINAMAD=adr angegeben ist;
bei EINAMAD=(r) wird die maximale Länge (54) angenommen.

länge
Länge des Namens der Ereigniskennung.

SCOPE=
beschreibt den Geltungsbereich (Teilnehmerkreis) für die Ereigniskennung.

LOCAL
Die Ereigniskennung wird nur von der Task des Aufrufers benutzt.

GROUP
Teilnehmer sind alle Tasks unter der Benutzerkennung des Aufrufers.

USER_GROUP
Teilnehmer können alle Tasks sein, deren Benutzerkennungen der gleichen Benutzergruppe angehören wie die Benutzerkennung des einrichtenden Teilnehmers.

Der Operandenwert setzt die Existenz von Benutzergruppen voraus und kann daher nur angegeben werden, wenn die Funktionseinheit SRPM des Software-Produkts SE-COS im System vorhanden ist. Vor einem Makroaufruf mit SCOPE=USER_GROUP muss deshalb mit dem Makro GETUGR (siehe Handbuch „SECOS“ [14]) geprüft werden, ob SRPM zur Verfügung steht; abhängig vom Ergebnis (Returncode) ist im Programm zu reagieren.

GLOBAL
Teilnehmer sind alle Tasks im System

EIID=
bezeichnet die Kurzkennung der Ereigniskennung. Diese Kurzkennung wird dem Benutzer durch den ENAEI-Makroaufruf zur Verfügung gestellt. Die Verwendung der Kurzkennung an Stelle des Namens zur Identifizierung der Ereigniskennung beschleunigt die Verarbeitung. Diese Angabe ist eindeutig.

adr
symbolische Adresse des Feldes, das die Kurzkennung enthält

(r)
r = Register, das die Adresse des Feldes enthält

MF=

Zur allgemeinen Beschreibung des Operanden MF, der dazugehörenden Operandenwerte und der evtl. nachfolgenden Operanden (z.B. für einen Präfix) siehe Abschnitt „S-Typ-Makroaufrufe“. Die gültigen MF-Werte sind zu Beginn der Makrobeschreibung bei „Makrotyp“ angegeben und aus dem Aufrufformat ersichtlich.

PARMOD=
steuert die Makroauflösung. Es wird entweder die 24-Bit- oder die 31-Bit-Schnittstelle generiert.
Wenn PARMOD nicht spezifiziert wird, erfolgt die Makroauflösung entsprechend der Angabe für den Makro GPARMOD oder der Voreinstellung für den Assembler (= 24-Bit-Schnittstelle).

24
Die 24-Bit-Schnittstelle wird generiert. Datenlisten und Befehle benutzen 24-Bit-Adressen (Adressraum <= 16 MB).

31
Die 31-Bit-Schnittstelle wird generiert. Datenlisten und Befehle benutzen 31-Bit-Adressen (Adressraum <= 2 GB).

Funktionsweise

Stehen bei Aufruf des Makros DISEI noch SOLSIG- bzw. POSSIG-Anforderungen des aufrufenden Programms in den Warteschlangen der Ereigniskennung (siehe Abschnitt„Ereignisgesteuerte Verarbeitung (Eventing)“), so werden sie gelöscht; ebenso werden die zugeord-neten Forward-Events aus der EVENTLST gelöscht (impliziter DELFEI). Bei SOLSIG-Anforderungen (synchron/asynchron) wird das aufrufende Programm über den Returncode in Register R15 bzw. über den Ereignis-Informationscode davon benachrichtigt. Dasselbe gilt für POSSIG-Anforderungen, zu denen ein Contingency-Prozess angegeben war.

Rückinformation und Fehleranzeigen

Register R1 enthält die Adresse des Datenbereichs.

R15:

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

Über die Ausführung des Makros DISEI wird ein gegliederter Returncode (aa=primärer RC, bb=sekundärer RC) im Register R15 übergeben.

X'bb'

X'aa'

Erläuterung

X'04'

X'00'

Funktion ausgeführt: Die Ereigniskennung wurde gelöscht.

X'08'

X'00'

Funktion ausgeführt: Die Verwendung der Ereigniskennung wurde für die Task des
Aufrufers beendet. Die Ereigniskennung wurde nicht gelöscht.

X'0C'

X'04'

Keine Aktion: Die vom System erstellte Ereigniskennung ist der Task des Aufrufers
nicht zugeordnet.

X'10'

X'04'

Keine Aktion: Es wurden ungültige Operanden angegeben.

X'14'

X'04'

Keine Aktion: Ungültiger Name bzw. ungültige Kurzkennung.
Es existiert keine Ereigniskennung mit spezifizierter Identifikation.

X'18'

X'04'

Keine Aktion: Die zu löschende Ereigniskennung wird noch von FASTPAM benutzt

Beispiele siehe „Ereignisgesteuerte Verarbeitung (Eventing)“ und „Contingen-cy-Prozesse“ (Contingency-Prozesse)