infra:NET Expert
 
×
1.8.6 SB 080 – 089: Fehlerbehandlung
Nummer
Bedeutung
080 – 089
Fehlerbehandlung
Bezieht sich immer auf mögliche Fehler beim zuletzt ausgeführten Befehl. Als Parameter wird in der Regel ein Meldungsschlüssel zur Ausgabe einer Fehlermeldung aus der Meldungsdatei (MELDUNG.DAT) mitgegeben. Folgende Angaben sind möglich:
  • dreistellige Nummer: Der Meldungsschlüssel wird gebildet aus FEDInnn (nnn=Nummer), also aus 003 wird „FEDI003“.
  • Beginnt der Parameter mit „!“ werden die nächsten 7 Stellen als Meldungsschlüssel verwendet, z.B. „!FIND001“.
  • Als Sonderfall kann als Parameter „sib“ angegeben werden, dann muss der Meldungsschlüssel allerdings intern schon gesetzt werden (nur nach bestimmten Sonderbehandlungsnummern (??) erlaubt).
Falls die Fehlermeldungen Platzhalter („@“) für Argumente enthalten, werden diese folgendermaßen ersetzt:
Das 1. Argument ist die Zieldatei, das 2. Argument ist eine Fehlernummer (lOpc).
Die Fehlerbehandlung generiert selbst keine eigenen Fehler (außer fatalen Fehlern, die zum Programmabbruch führen). D.h., ein Fehler kann ggf. durch mehrere Fehlerbehandlungen laufen. Die Fehlerbehandlungen 080 und 081 werden in der Statistik nicht gezählt.
Bei Fehlernummer wird in der Drucktabelle nur der Meldungstext ausgegeben, z.B.
140
255
1
 
 
 
 
089,9996
* Fehler 9996 setzen
140
255
1
1
 
 
R05
085,!F448071
* Vertrag fehlt -> naechste Satzart 100
080
Wenn kein Fehler auftrat, neu aufsetzen in Steuerdaten. Parameter ist die neue Blocknummer
081
Im Fehlerfall neu aufsetzen in Steuerdaten. Parameter ist die neue Blocknummer
082
Im Fehlerfall Protokoll- und Listausgabe des Fehlers und weitermachen
Beispiel für Fehler akzeptieren (Satz nicht da) und wenn Fehler zu anderem Block.
35
42
F1
 
 
 
 
100,1
* Adresse lesen ueber Pfad 1
35
I01
118
5
I01
110
8
087,3
* Fehlerargumente
35
42
F1
 
 
 
 
082,!F000228
* Bei Fehler nur Meldung ausgeben
35
42
F1
 
 
 
 
081,40
* Bei Fehler weiter mit Block 40
35
255
1
1
 
 
 
041,37
* -> weiter mit Block 37
083
Im Fehlerfall Protokoll- und Listausgabe des Fehlers und weiter bei nächster erkannter Satzart
084
Im Fehlerfall Protokoll- und Listausgabe des Fehlers und weiter mit nächster Zeile der übergebenen Daten (EDI-Datei)
085
Im Fehlerfall Protokoll- und Listausgabe des Fehlers und weiter mit der nächsten Satzart, der eine Blocknummer < 10 (Default) zugeordnet ist, im Allgemeinen also Satzart Kopf.
In der Quellangabe kann festgelegt werden, dass auch andere Blocknummern als nächstes zugelassen werden. Wenn z.B. Satzart K (über Block 1) allgemeine Abrufdaten enthält, Satzart A (über Block 100) die jeweiligen Aufträge und Satzart P (über Block 200) die Auftragspositionen, dann soll bei Fehlern in Satzart A entweder mit nächster Satzart A oder mit nächster Satzart K weitergearbeitet werden.
Beispiel:
1       R05                                                     002,100 * Fuer naechste max. Satzart bei Fehler
101     41      F1                      R05                     085,!F448055 * Bei Fehler -> naechste Satzart <=100
 
140
255
1
 
 
 
 
089,9996
* Fehler 9996 setzen
140
255
1
1
 
 
R05
085,!F448071
* Vertrag fehlt -> naechste Satzart 100
Am Bildschirm wird bei Fehler die Meldung mit dem Schlüssel F448055 ausgegeben.
086
Analog zu 085, aber es werden keine Fehler- oder Protokollausgaben vorgenommen.
Man hat damit die Chance, zum nächsten Kopfsatz zu wechseln ohne die Ausgaben, dass Satzarten überlesen werden.
Beispiel:
1
41
F1
 
 
 
 
100,1
* Kunde über Pfad 1
1
41
F1
 
 
 
 
080,2
* Gut, also Block 2
* Kunde fehlt
* -----------
1
255
1501
132
 
 
 
003,32
* alles Leerzeichen
1
255
1501
30
 
 
 
001,Kunden-
stammsatz nicht gefunden
1
255
1501
132
 
 
 
074,3
 Ausgabe fett+rot
1
255
1501
132
 
 
 
003,32
* alles Leerzeichen
1
255
1501
30
 
 
 
004,=
* Unterstreichen
1
255
1501
132
 
 
 
074,3
* Ausgabe fett+rot
1
255
1501
132
 
 
 
003,32
* alles Leerzeichen
1
255
1630
1
 
 
 
003,225
* Leerzeile drucken
1
255
1501
132
 
 
 
074
* Ausgabe
1
255
1
1
 
 
 
086
* Naechster Kopf
087
Argument für Fehlermeldung setzen (maximal werden 20 Zeichen je Parameter übernommen). Als Parameter wird die „Meldungsparameternummer“ angegeben:
1
für ersten Meldungsparameter @ im Meldungstext (Parameter 2 wird durch den Fehlercode ersetzt).
2
für den zweiten Meldungsparameter @ im Meldungstext (Parameter 1 wird durch die Zieldatei ersetzt).
3
für beide (Zielangabe wird als Parameter 1 und Quellangabe als Parameter 2 übernommen).
Als Default wird bei der Auswertung dieser Sonderbehandlung immer zuerst Meldungsparameter 1 mit der Zieldatei und Parameter 2 mit dem letzten Fehlercode versorgt.
Wird z.B. hintereinander „…087,1“ und „…087,2“ benutzt so steht im ersten Meldungsparameter wieder die Zieldatei.
Beispiel:
132
I04
1
20
I04
21
20
087,3
* Fehlerargumente setzen (Kunde+Werk+Abladestelle+Teil)
088
Im Probelauf Fehlerstatus zurücksetzen
089
Fehlerstatus setzen. Für die anschließend mögliche Fehlerausgabe werden die beiden Standard-Platzhalter Fehlernummer (lFehler) und Fehlercode (lOpc) jeweils mit dem übergebenen Parameter versorgt. Wenn kein Parameter angegeben ist wird die Fehlernummer 9997 verwendet.