Die folgenden Erläuterungen sind nur für die Dateimanagement-CALL-Aufrufe (NDEL, NLMOD, NLSHOW, NMOD und NSHOW) gültig.
Maincode
Dieses Feld enthält den genauen Fehler. Es ist in 2 Byte unterteilt. Das rechtsbündige Byte gibt die Fehlerursache an. Es kann folgende Werte annehmen (dezimal dargestellt):
0: | der Aufruf war fehlerfrei |
1: | das Parameterfeld liegt ganz oder teilweise in einem ungültigen Adressraum |
2: | Adress- oder Längenfeld stehen in Widerspruch zum Schlüsselwortfeld |
3: | die Parameterangabe steht in Widerspruch zu einem anderen Parameter |
4: | Parameterwert zu lang oder Verstoß gegen die Syntaxregeln; zum Beispiel FILENAME, PASSWORD |
10: | Puffer zu klein; dieser Fehlercode ist für zukünftige Erweiterungen reserviert |
11: | arithmetischer Parameterwert (zum Beispiel RECSIZE-Wert) ungültig |
12: | Angegebenes Schlüsselwort ist für diesen Parameter nicht zulässig |
13: | Pflichtparameter fehlt |
Das linksbündige Byte wird nur bei Parameterfehler auf einen Wert ungleich 0 gesetzt. Es spezifiziert den fehlerhaften Parameter. Die Bedeutung der Werte können Sie der Beschreibung des Assembler-Makros YNDEQU auf "YNDEQU - Konstanten für die openFT-Makros setzen" entnehmen.
Falls das linksbündige Byte auf 0 gesetzt wurde, enthält das rechtsbündige Byte die Meldungsnummer als Resultat des Aufrufs.
Subcode1
Die Fehlercodes sind in Fehlerklassen eingeteilt. Diese werden im Subcode1 hinterlegt. Folgende Fehlerklassen werden unterschieden:
Klasse | Wert | Bedeutung |
A | 0 | der Aufruf wurde fehlerfrei beendet |
B | 1 | permanenter Fehler; keine Wiederholung möglich, es wurde ein syntaktischer oder wertmäßiger Parameterfehler festgestellt |
C | 32 | Systemfehler |
D | 64 | Wiederholung nach Korrektur in der Benutzereingabe ist sinnvoll |
E | 128 | Warten und Wiederholen |
Subcode2
Dieses Feld enthält eine Warnung, wenn der Makroaufruf zwar fehlerfrei beendet wurde (Subcode1 = 0 und Maincode = 0), die eigentliche Funktion aber nicht ausgeführt werden konnte, zum Beispiel wenn beim Aufruf NSHOW keine Dateien gefunden werden konnten.
Ausnahme
Enthält der Maincode den Wert X’FFFF’ (-1), so konnte der Auftrag aus systemweit eindeutig geregelten Gründen nicht ausgeführt werden.