View Full Version : Fehlerbehandlung
Also solche Fehler automatisch zu ignorieren, halte ich im Sinne der Anwendung für fatal, wer weiß, welche Folgefehler durch solche fehlerhaften Daten dann entstehen.
Ein RPG-Programmierer müsste eigentlich wissen, wie man solche Fehler abfängt ;)
Lass doch deine RPG-Programmierer mal hier ins Forum schauen.
Beide Möglichkeiten
- IF Wert zu groß
- Monitor
sind korrekt, aber das Programm sollte wissen, was dann zu geschehen hat. Einfache Ignoranz ist bestimmt nicht korrekt, insbesonders wenn z.B. Provisionen vom Umsatz oder Buchhaltung betroffen sind.
Solche Meldungen per RPYLE zu beantworten bedeutet auch, dass andere Programme mit ähnlichen Fehlern automatisch weiterlaufen und keiner merkt's.
Hallo,
habe mir eben die beiden Möglichkeiten mit einem RPG Programmierer angeschaut. Den Vorschlag bezüglich RPYLE würde ich selber als ungeeignet einschätzen, da Auswirkungen auf alle Anwendungen zu erwarten sind. Leider liegen besagte Programme nicht im Freeformat vor, was Vorschlag 2 wohl ausschließt (MonitoR) !? Da bei der Verarbeitung eine ganze Reihe Felder auf beschriebene Weise gefüllt werden ist eine Ergänzung um die IF Abfrage zur Zeit kein Thema (zu viel Aufwand).
Problematisch ist, daß der Rest der Nachtverarbeitung nicht weiterläuft und diese Auswirkungen wesentlich kritischer sind als die fehlende oder fehlerhafte Verarbeitung des (einen) Satzes.
Angemerkt sei folgendes: die Wahrscheinkichkeit für diesen Fehler ist schon sehr gering, da die Schnittstellendaten eigentlich sehr "sauber" sind (ist 1 x innerhalb von 3 Jahren aufgetreten).
Der fehlerhafte Satz soll nicht ignoriert werden, es wäre aber "sehr schön", wenn keine Benutzereingabe erforderlich ist und der Programmieraufwand im akzeptablen Rahmen bleibt. Noch 'ne Idee ?!
Gruß Andreas Sturm
Also solche Fehler automatisch zu ignorieren, halte ich im Sinne der Anwendung für fatal, wer weiß, welche Folgefehler durch solche fehlerhaften Daten dann entstehen.
Ein RPG-Programmierer müsste eigentlich wissen, wie man solche Fehler abfängt ;)
Lass doch deine RPG-Programmierer mal hier ins Forum schauen.
Beide Möglichkeiten
- IF Wert zu groß
- Monitor
sind korrekt, aber das Programm sollte wissen, was dann zu geschehen hat. Einfache Ignoranz ist bestimmt nicht korrekt, insbesonders wenn z.B. Provisionen vom Umsatz oder Buchhaltung betroffen sind.
Solche Meldungen per RPYLE zu beantworten bedeutet auch, dass andere Programme mit ähnlichen Fehlern automatisch weiterlaufen und keiner merkt's.
JonnyBrazil
21-12-05, 12:28
ändere einfach die entsprechende Jobbeschreibung auf default-Antwort.
CHGJOBD JOBD(QBATCH) INQMSGRPY(*DFT)
dann sollte das fehlerhafte Programm den defaultwert für die Fehlermeldung erhalten und z.B. dumpen und natürlich sich selbst beenden.
Hallo,
es hält euch doch aber nichts davon ab MONITOR auch im "Standard-RPG Format" zu verwenden. MONITOR bedingt nicht Free-Format. Ich habe es nur so aufgeschrieben.
C MONITOR
C* Anweisung
C ON-ERROR [Fehlercode]
C* Fehlerbehandlung
C ENDMON
Gruß
Sascha
"Monitor" gibts auch im Fest-Format, allerdings nur in RPGLE.
Aber das sollte kein Hindernis sein, da per CVTRPGSRC aus RPG auch ILERPG machbar ist. Copy-Strecken müssen allerdings separat konvertiert werden.
Wie wärs alternativ mit:
CRTRPGPGM .... IGNDECERR(*YES) ?
In RPGLE ist es die Option TRUNCNBR(*YES), die allerdings nicht für Zwischenergebnisse zählt, also bei EVAL A = A * B wird ein Fehler ausgelöst, bei "MULT B A" wird kein Fehler ausgelöst.
recht herzlichen Dank für die Unterstützung.
Mit den Tipps und der weiteren Beurteilung durch unsere AS400 Programmierer haben wir jetzt scheinbar eine akzeptable Lösung gefunden. Details werde ich im nächsten Jahr erfahren (und hier posten), jetzt ist erstmal Urlaub angesagt....
Nochmals schönen Dank, geruhsame Feiertage und einen guten Rutsch
Andreas Sturm