EXEC TAA SET [AND RAISE] <Severity> GROUP { <alphanum. literal> | FROM <Datenname> } CODE { <num . literal> | [FROM] <Datenname > } [[ARGUMENTS [=]] (<Feldangabe1>|<Literal1> [[,<Feldangabe1>|<Literal1>]...])] [[<Association> = <Feldangabe2>|<Literal2>] ... ] END-EXEC <Feldangabe> = {COBOL-Variable | <objektname>.<feldname>[(indices)]}
Wenn ein Modul die Notwendigkeit für einen Laufzeitzustand erkennt, benutzt es die SET-Anweisung, um ihn in die Liste der aufgetretenen Laufzeitzustände einzutragen. Der neu eingetragene Laufzeitzustand ist danach der aktuelle (CURRENT). Die von der TAA bereitgestellten Datenelemente enthalten anschließend die Informationen zu dem gerade gesetzten Laufzeitzustand.
Das Setzen eines Laufzeitzustands bewirkt noch keine Reaktion des Systems, außer bei Severity SysFatal: In dem Fall wird die gesamte Anwendung sofort abgebrochen. In allen anderen Fällen erfolgt die Reaktion auf den Laufzeitzustand erst, nachdem er aufgeworfen wurde, d.h. an einen Condition Handler übergeben wurde (RAISE).
Die Syntax der SET-Anweisung ermöglicht auch, den neu eingetragenen Laufzeitzustand sofort nach dem Eintragen aufwerfen zu lassen.
Die Angabe <Severity> muss einem der vorgegebenen Severity Codes entsprechen.
GROUP: Der Name der Meldungsgruppe ist in der Regel ein alphanumerisches Literal, welches nicht in Anführungszeichen stehen darf: Der Name der Gruppe kann auch als Variable angegeben werden; dies wird durch die Angabe „FROM <Name>“ kenntlich gemacht. Achtung - Wenn der Name der Gruppe als Variable angegeben ist, ist die Vor-und Nachbearbeitung von Conditions nicht auf allen Laufzeitsystemen möglich.
CODE: Gibt die Nummer der Meldung innerhalb der Meldungsgruppe an. Die Angabe kann als numerisches Literal oder über eine COBOL-Variable erfolgen. Wenn Angabe einer COBOL-Variablen kann mit „FROM“ eingeleitet werden; im Gegensatz zu GROUP ist das Wort FROM bei der CODE-Angabe optional.
Über „Associations“ können Datenbereiche übergeben werden, die nicht Argumenten zugeordnet sind. Der Name einer Association muss ein alphanumerisches Literal sein und darf nicht in Anführungszeichen stehen.
Wenn ein Laufzeitzustand mit der angegebenen Gruppe und dem Code in der TAA-Infrastruktur nicht bekannt ist, wird er mit Default-Angaben in die Liste der aufgetretenen Laufzeitzustände eingetragen.
Alphanumerische Argumente, die als Literal übergeben werden, werden auf max. 59 Zeichen abgeschnitten. Alphanumerische Argumente, die als Variable übergeben werden, werden auf max. 80 Stellen abgeschnitten. Längere Strings können als Datenverbindung übergeben werden.
EXEC TAA SET AND RAISE WARNING GROUP IOSYS CODE 73 (OF-NAME, SYS-CODE) FILENAME = OF-NAME FILE-OP = "OPEN" END-EXEC EXEC TAA SET AND RAISE ERROR GROUP FROM WS-CNDGROUP CODE WS-CNDCODE (OF-NAME, SYS-CODE) FILENAME = OF-NAME FILE-OP = "OPEN" END-EXEC
Weitere Funktionen zum Behandeln von Laufzeitzuständen: