[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Feb 2001
    Beiträge
    20.254
    Auch bei der Objektorientierung vermeide ich selber Throw/Catch, da die meisten Aufrufe durchaus mit einem Bool-Return einen OK-Status zurückgeben können.
    Zumal das Fehlerhandling durch diese Methodik die Programmausführung bei häufigen "Fehlern" durchaus verlangsamt.
    Hinzu kommt, dass jeder SNDPGMMSG/QMHSNDPM einen Joblog-Eintrag erzeugt. Auch dies ist bei häufigem Vorkommen verlangsamend zumal es zusätzlich unnötige Joblogs (WRAP) produziert.

    *PGMBDY ist zwar eine Möglichkeit, da musst du aber sicher sein, dies in der Hauptprozedur durchzuführen. Befindest du dich in einer internen Unter-Procedur, schlägt das auf den Aufrufer des Programmes und nicht den Aufrufer der Prozedur durch. Damit können durchaus mehrere Aufrufebenen übersprungen werden.
    Dies gilt auch für Service-Programme, die Aufrufe durchaus verschachteln können.

    Eine saubere Schnittstellendefinition incl. Fehleraussage halte ich generell für besser.
    Siehe auch SYSERR-Struktur bei API's.

    Aber das ist halt alles Geschmackssache;-).
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  2. #2
    Registriert seit
    Aug 2003
    Beiträge
    1.508
    Naja, wenn Exceptions sind ja ... wie der Name es schon sagt ... Außnahmen.
    Kommen diese oft oder regelmäßig vor, ist es eher ein Designfehler.
    Exceptions im Joblog sind natürlich auch eine super Sache für Analysen (neben Logtabellen/Logfiles).

  3. #3
    Registriert seit
    Oct 2011
    Beiträge
    26
    Die Fehler kommen im Grunde nur während der Testphase vor. Sobald das Programm fertig ist, sollte kein Fehler mehr auftreten, falls doch wäre es richtig, wenn der Programmablauf abbricht.

    Die Frage ist: Wie gebe ich eine korrekte Message im ILE RPG Programm aus?

    SNDPGMMSG MSGID(CPF9899) MSGF(QCPFMSG) MSGTYPE(*NOTIFY) mit QCMD?

  4. #4
    Registriert seit
    Mar 2002
    Beiträge
    5.287
    ... ein Beispiel findest Du hier (procedure error):
    http://bender-dv.de/Sourcen/QRPGLESRC.APILIST
    den Prototyp für QMHSNDPH hier:
    http://bender-dv.de/Sourcen/QRPGLEH.QMHSNDPM
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  5. #5
    Registriert seit
    Feb 2001
    Beiträge
    20.254
    Wenn du einen Abbruch willst, dann must du *ESCAPE senden.
    Bei *NOTIFY passiert rein gar nichts.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

Similar Threads

  1. embedded SQL Fehler SQL0312 beim Umwandeln
    By Hubert in forum NEWSboard Programmierung
    Antworten: 9
    Letzter Beitrag: 09-12-19, 12:45
  2. Replaced Programm verursacht Fehler
    By harkne in forum NEWSboard Programmierung
    Antworten: 16
    Letzter Beitrag: 24-10-18, 12:44
  3. Antworten: 2
    Letzter Beitrag: 12-08-14, 12:09
  4. Antworten: 2
    Letzter Beitrag: 06-09-02, 07:59
  5. Fehler im C-Programm bei SQLALLOCENV
    By delphix in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 06-03-02, 15:07

Tags for this Thread

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •