Beim Hauptprogramm-Aufruf setzt PERCON einen Kommando-RC, aus dem hervorgeht, ob alle Anweisungen von PERCON fehlerfrei ausgeführt wurden oder nicht bzw. ob PERCON normal oder abnormal endete. Bei Warnungen oder Abbrüchen wird der Kommando-RC mit dem entsprechenden Meldungsschlüssel versorgt.
Beim Unterprogramm-Aufruf von PERCON wird kein Kommando-RC gesetzt.
Beim Festlegen des Kommando-RC werden folgende Fälle unterschieden:
normale Beendigung:
SC2=X'00' / SC1=X'00' / MC=C'CMD0001'
normale Beendigung mit Warnung:
SC2=X'02' / SC1=X'00' / MC=C'PERxxxx'
abnormale Beendigung nach Abbruch von mindestens einem Konvertierungsschritt:
SC2=X'00' / SC1=X'01' / MC=C'PERxxxx'
Liegt keine PER-Meldung vor (z.B. bei Syntaxfehlern in fester Anweisungsfolge), gilt:
MC=C'CMD0202'.
abnormale Beendigung nach einem Fehler, der das Nachbinden des Großmoduls von PERCON (und damit den eigentlichen PERCON-Lauf) verhindert:
SC2=X'00' / SC1=X'40' / MC=C'PERxxxx'
Treten in einem PERCON-Lauf mehrere Situationen auf, die den Kommando-RC beeinflussen, so wird der schwerste aufgetretene Fehler gemeldet. Das bedeutet, dass z.B. der einer Warnung zugeordnete Kommando-RC nicht gemeldet wird, wenn ein Konvertierungsschritt abgebrochen wurde. Bei mehreren gleichwertigen Fehlern wird der erste gemeldet.
Das Festlegen des Maincodes erfolgt unabhängig davon, ob die entsprechende Meldung wirklich ausgegeben wird oder ob ihre Ausgabe entsprechend den Festlegungen in der Anweisung MODIFY-PERCON-OPTIONS unterdrückt wird, d.h. das Auftreten eines Ereignisses bestimmt den Maincode, nicht die gerade eingestellte Art der Meldungs-Ausgabe.
PERxxxx | SC2 | SC1 | Maincode | Bedeutung |
0000 0029 0030 0070 | - | - | - | kein RC gesetzt |
0001 | - | - | - | wenn eine andere PERCON- |
00 | 01 | CMD0202 | sonst | |
0031 | - | - | - | wenn eine andere PERCON- |
00 | 00 | CMD0001 | sonst | |
0009 0012 0014 0016 | 02 | 00 | PERxxxx | Warnungen |
0021 | 02 | 00 | PER0021 | bei Antwort HN oder SN |
00 | 01 | PER0021 | bei Antwort HA oder SA | |
0022 | 00 | 01 | PER0022 |
|
02 | 00 | PER0022 | bei Eingabedateien mit | |
0063 | 02 | 00 | PER0063 | Antwort I oder S |
00 | 01 | PER0063 | Antwort H | |
0005 0006 0007 0008 | - | - | - | bei Eingabe der Anweisungen über |
0028 0034 0043 0046 | 00 | 01 | PERxxxx | bei fester Anweisungs-Folge |
0010 0033 0049 0050 | - | - | - | bei Eingabe der Anweisungen über |
0088 0089 0090 0091 | 02 | 00 | PERxxxx | bei fester Anweisungs-Folge |
0013 0066 0080 0087 | - | - | - | bei Eingabe der Anweisungen über |
02 | 00 | PERxxxx | ISP-Anweisungen, bei fester | |
00 | 01 | PERxxxx | SDF-Anweisungen, bei fester | |
0002 0004 0011 0015 | 00 | 01 | PERxxxx | Abbruch des Konvertierungsschritts |
0095 0104 0106 0107 | 00 | 64 | PERxxxx | Abbruch von PERCON |
0105 | 00 | 64 | CMD0205 | Abbruch von PERCON mit TERM |
0003 | 00 | 64 | PER0003 | Arbeitsspeicher-Mangel beim |
00 | 01 | PER0003 | Abbruch des Konvertierungsschritts |