Allgemeines
Anwendungsgebiet: | Meldungswesen; siehe "Meldungswesen" |
Makrotyp: | S-Typ, MF-Format 1 (31-Bit-Schnittstelle): Standardform/L-/E-/C-/D-Form; siehe "S-Typ-Makroaufrufe" |
Die Zuordnung zwischen Systemmeldungen und den sie enthaltenden Meldungsdateien erfolgt mit der globalen Bereichszuordnungstabelle (Class List). Diese enthält alle Meldungsklassen (die ersten 3 Zeichen des Meldungsschlüssel) und die zugeordneten Namen der Meldungsdateien. Die globale Bereichszuordnungsliste wird beim Systemstart aufgebaut und kann von der Systemverwaltung im laufenden Betrieb mit den Makros MSGSI-NIT/MSGSMOD oder dem Kommando MODIFY-MSG-FILE-ASSIGNMENT modifiziert werden.
Der nichtprivilegierte Anwender kann, begrenzt auf seine Task, eigene Meldungsdateien zur Meldungsausgabe benutzen. Mit dem Makro MSGSHOW oder dem Kommando SHOW-MSG-FILE-ASSIGNMENT können die Namen der (System-) und/oder taskspezifischen Meldungsdateien abgefragt werden. Der Standardwert für die Sprache der Meldungsausgabe ist im Benutzerkatalog festgelegt, siehe Kommando SHOW-USER-ATTRI-BUTES, Ausgabefeld DEFAULT-MSG-LANGUAGE. Wenn er dort nicht angegeben ist, wird der im Startup-Parameterservice eingestellte Wert benutzt. Zu den Kommandos siehe das Handbuch „Kommandos“ [19].
Makrobeschreibung
Die Systemverwaltung kann mit dem Makro MSGSMOD dem Meldungssystem weitere Meldungsdateien hinzuzufügen oder Zugriffe auf Meldungsdateien verhindern. Meldungsklassen und Namen neuer Meldungsdateien werden am Anfang der globalen Bereichszuordnungsliste eingetragen. Für zu sperrende Meldedateien werden alle Verweise in der globalen Bereichzuordnungsliste gelöscht. Die Modifizierung dieser Liste gilt nur für den aktuellen Systemlauf - die Generierungswerte werden nicht verändert.
Der nichtprivilegierte Anwender kann mit MSGSMOD für den aktuellen Tasklauf eigene Meldungsdateien in das Meldungssystem einbringen und eine Sprache für die Meldungsausgabe festlegen. Die taskspezifischen Meldungsdateien werden bei der Meldungssuche vor den (System-)Meldungsdateien durchsucht.
Mit einem Makroaufruf können maximal 8 Meldungsdateien dem Meldungssystem hinzugefügt (Operand IMPORT) und maximal 8 Meldungsdateien gesperrt werden (Operand EX-PORT). Bei gleichzeitiger Angabe von EXPORT und IMPORT müssen die Dateinamen in derselben Art und Weise übergeben werden (entweder Register (r) oder Adressen (adr) oder Dateinamen (datei)).
Makroaufrufformat und Operandenbeschreibung
MSGSMOD |
[EXPORT={ {(r) / (r),(r), ... ,(r) / (REG,n)} / {adr / (adr,adr, ... ,adr) / (ADR,n)} / {'datei' / ('datei', ... ,'datei') / (FILE,n)} }] [,IMPORT= { {(r) / (r),(r), ... ,(r) / (REG,n)} / {adr / (adr,adr, ... ,adr) / (ADR,n)} / {'datei' / ('datei', ... ,'datei') / (FILE,n)} }] [,SCOPE=TASK / SYSTEM] ,SEARCH=*UNCHANGED / *ALL / *STD / *TASK 1 ,LAN=*UNCHANGED / *STD / 'sprache' ,MF=S / C / (C,pre) / (E,...) / (D,pre) / D / L |
1Der Operand SEARCH wird nicht mehr ausgewertet. Er kann aus Kompatibilität noch angegeben werden.
EXPORT=
IMPORT=
bezeichnet die Meldungsdatei(en), die gesperrt (EXPORT) bzw. die dem Meldungssystem hinzugefügt (IMPORT) werden soll(en).
(r)
r = Register mit dem Adresswert des Feldes mit dem Namen der Meldungsdatei.
((r),..(r))
Angabe einer Liste mit maximal 8 Registern. Jedes Register beinhaltet den Adresswert eines Feldes mit dem Namen einer Meldungsdatei.
(REG,n)
Die Angabe der Register wird im Datenbereich erwartet. Der Operand kann nur in Verbindung mit MF=L/D/C angegeben werden.
n = Anzahl der Adressen; n <= 8. Voreinstellung: n=1.
adr
symbolische Adresse des Feldes mit dem Namen der Meldungsdatei
(adr,...)
Angabe einer Liste mit maximal 8 symbolischen Adressen. Die Adressen bezeichnen Felder mit den Namen der Meldungsdateien.
(ADR,n)
Die Angabe der Adressen wird im Datenbereich erwartet. Der Operand kann nur in Verbindung mit MF=L/D/C angegeben werden.
n = Anzahl der Adressen; n <= 8. Voreinstellung: n=1.
'datei'
datei = Name einer Meldungsdatei.
(datei,...)
Angabe einer Liste mit maximal 8 (Meldungs-)Dateinamen.
(FILE,n)
Die Angabe der Namen der Meldungsdateien wird in der Operandenliste erwartet. Der Operand kann nur in Verbindung mit MF=L/D/C angegeben werden.
n = Anzahl der Meldungsdateien; n <= 8. Voreinstellung: n=1.
SCOPE=
bestimmt den Geltungsbereich der bei IMPORT/EXPORT angegebenen Meldungsdateien. Geltungsbereich kann das System (alle Tasks im System) oder, eingeschränkt, die Task mit dem aufrufenden Programm sein.
TASK
Die Meldungssuche in den bei IMPORT/EXPORT angegebenen Meldungsdateien betrifft nur die Task mit dem den Makro MSGSMOD aufrufenden Programm. Bei Taskende wird die Zuordnung automatisch wieder gelöscht. EXPORT kann nur spezifiziert werden, wenn zuvor die Meldungsdatei(en) mit IMPORT der Task zugeordnet
wurde(n). TASK ist Voreinstellung für den nichtprivilegierten Anwender.
SYSTEM
Die Meldungssuche in den bei IMPORT/EXPORT angegebenen Meldungsdateien betrifft alle Tasks im System. Die Zuordnung gilt nur für den aktuellen Systemlauf. Der Operand SYSTEM kann nur unter der Kennung der Systemverwaltung angegeben werden.
SYSTEM ist Voreinstellung für die Systemverwaltung.
LAN=
ermöglicht die Angabe einer Sprache für die Meldungsausgabe. Die Vereinbarung gilt nur für den Tasklauf.
*UNCHANGED
Die für den Tasklauf vereinbarte Sprache wird nicht gewechselt.
*STD
Sprache entsprechend Benutzerkatalog oder Systemparameter MSGLPRI.
'sprache'
sprache = 1 Buchstabe. Es gilt: D = Deutsch, E = Englisch.
Zeichen für andere Sprachen sind bei der Systemverwaltung zu erfragen.
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.
Die C-Form oder D-Form ist nur möglich in Verbindung mit IMPORT/EXPORT=REG/ADR/ FILE. Es kann ein Präfix (pre = 1..4 Buchstaben), wie im Aufrufformat dargestellt, angegeben werden.
Voreinstellung:
pre = MODC für C-Form
pre = MODD für D-Form
Die Angabe von weniger als vier Buchstaben für das jeweilige Präfix führt zu der Zeichenfoge: MODx (x entspricht 1. Buchstabe).
Rückinformation und Fehleranzeigen
R15:
+---------------+ | | | | | | | |b|b|b|b|a|a| +---------------+
Über die Ausführung von MSGSMOD wird im Register R15 ein Returncode übergeben. Die Werte bezeichnen Sedezimalkonstanten.
bbbb muss bitweise ausgewertet werden.
Bit 2
n-1
= 1
: Die n-te Datei (in der angegebenen Reihenfolge, mit EXPORT=... beginnend) konnte nicht fehlerfrei bearbeitet werden.
X'bbbb' | X'aa' | Erläuterung |
X'xxxx' | X'00' | Normale Ausführung. |
X'xxxx' | X'04' | Fehler während der Makroausführung. |
X'08' | Operandenfehler. | |
X'0C' | Zugriffsberechtigung: Anwender ist nicht TSOS (Systemverwaltung). | |
X'10' | Ressourcenbegrenzung (REQM-Fehler) | |
X'xxxx' | X'30' | Makro kann nicht ausgeführt werden. |
X'41' | MIP-Subsystem ist nicht geladen. |