[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    May 2007
    Beiträge
    9

    CPF4131 im CL beim Aufruf abfangen

    Hallo Zusammen,

    ich rufe in einem CL ein RPG-Programm auf und es kommt der Fehler CPF4131 , da ich (mal wieder) vergessen hatte das Programm nach einer Dateiänderung zu wandeln.
    Das Problem lässt sich dann ja durch wandeln leicht beheben.

    Würde dennoch gerne den Fehler so abfangen, dass z.B. bei Aufruf im Batch oder per Jobplanung keine Fehlernachricht beantwortet werden muss…

    mein Versuch im CL

    CALL PGM(MY_READ1)
    MONMSG MSGID(CPF4131) EXEC(GOTO CMDLBL(ENDE))

    funktioniert leider nicht:
    Antwort auf Nachricht in Nachrichtenwarteschlange QSYSOPR erwartet.

    Kann man diesen Fehler gar nicht abfangen?

  2. #2
    Registriert seit
    Aug 2003
    Beiträge
    1.508
    Schau mal ins Joblog.
    Eventuell ist das nur ein Folgefehler und du musst den vorherigen Fehler abfangen.

    lg Andreas

  3. #3
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Hierfür musst du einen CHGJOB INQMSGRPY() durchführen.
    Der Default ist *RQD was eine Meldung in QSYSOPR erwartet.
    *DFT erfasst die Defaultantwort, *SYSRPYL holt die Antwort aus der Systemliste.
    Beim Abbruch gibt's dann eine RPGxxxx oder CPFxxxx Meldung.
    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

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Die CPF4131 wird von der RPG-Runtime abgefangen und kann deshalb nicht überwacht werden.
    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

  5. #5
    Registriert seit
    Aug 2003
    Beiträge
    62
    Hallo
    eine Option wäre:
    Im CL -Programm
    CHGJOB INQMSGRPY(*SYSRPYL)
    Dann mit dem Command WRKRPYLE

    SEQNBR > 20
    MSGID CPF4131
    CMPDTA
    *NONE

    *SAME
    RPY 'D'


    Additonal Parameters

    DUMP *YES
    CCSID *SAME

    eintragen. Das Programm wird dann automatisch gedumpt

  6. #6
    Registriert seit
    May 2007
    Beiträge
    9
    Vielen Dank an alle für die ausführlichen Antworten.

  7. #7
    Registriert seit
    May 2007
    Beiträge
    9
    Hallo,
    die Lösung mit der automatischen Antwort wäre für mich passend.
    Der Fehler CPF4131 ist laut Joblog auch tatsächlich der erste Fehler.
    Aber irgendetwas klemmt da noch. Im Job und in der benutzten Jobbeschreibung wird
    INQMSGRPY(*SYSRPYL) genutzt und der Antwortlisteneintrag sieht so aus:

    Folgenummer . . . . . . . . . . > 20 1-9999
    Nachrichten-ID . . . . . . . . . CPF4131 Zeichenwert, *SAME, *ANY
    Vergleichsdaten:
    Vergleichsdaten . . . . . . . *NONE
    Startposition Nachrichtendaten *SAME 1-999, *SAME, *NONE
    Nachrichtenantwort . . . . . . . 'D'

    Ich hätte gedacht, dass dann im SYSOPR keine Nachricht mehr zu beantworten wäre, da ja automatisch geantwortet würde.

    Hat noch jemand einen Hinweis für mich, was ich ändern müsste?

  8. #8
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Schau mal ins Joblog.
    Wenn ein RPG-Programm mit Meldung abgebrochen wird, gibt's eine weitere RPGxxxx-Meldung die wohl auch wieder einer Antwort bedarf bis es dann zu einer CPF-Meldung kommt.
    Ich denke mal, die CPF4131 wurde beantwortet.
    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

  9. #9
    Registriert seit
    Dec 2014
    Beiträge
    310
    1) Kommt im RPG Pgm laut Joblog noch ein weiterer Fehler?
    Falls ja, dann müsste der auch in die RPYL.

    2) Den CALL im CL Pgm musst Du (zB) mit CPF0000 abfangen, weil das RPG Pgm meldet natürlich einen Fehler an das aufrufende Pgm zurück.

    EDIT: Hoppla, da war schon jemand schneller :-)

  10. #10
    Registriert seit
    May 2007
    Beiträge
    9
    Hallo,

    erst mal vielen Dank für die Unterstützung.

    Konnte das Problem mit Hilfe des Forums lösen und die automatischen Antworten funktionieren jetzt.

    Die Zustellung steht bei uns beim QSYSOPR auf *HOLD und dadurch funktionierte die automatischen Antworten nicht, was ich nicht wusste.

    Nähere Infos dazu stehen hier:

    http://www-01.ibm.com/support/docvie...d=nas8N1018052


    Habe dazu im CL temporär auf *DFT geändert

    CHGMSGQ MSGQ(QSYSOPR) DLVRY(*DFT)

    und schon funktioniert es.

  11. #11
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Wenn diesen CHGMSGQ aber mehrere Programme parallel setzen und wieder zurücksetzen kann es zu sehr unerwünschten Nebeneffekten kommen.
    Da solltest du dir was besseres überlegen.
    Warum steht denn QSYSOPR auf *HOLD?
    Dies ist eher unüblich und sollte besser auf *DFT bleiben.
    Ggf. kann eine Konsole (o.ä.) sich die QSYSOPR auch per *BREAK zuordnen.

    Alternativ schaue mal die Default-Antwort der jeweiligen Nachricht an.
    Wenn diese OK für dich ist, ist es besser deinen Job (nach Möglichkeit nur bei Batch) auf INQMSGRPY(*DFT) zu ändern. Dann brauchst du auch keine Antwortliste an die ggf. bei Systemwechsel keiner denkt, die neuen Einträge dann nachzutragen.
    Das ändert aber nichts am Status der QSYSOPR.
    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

  12. #12
    Registriert seit
    May 2007
    Beiträge
    9

    Thumbs up

    Perfekt :-)

    Die Variante mit der Standardantwort ( bei CPF4131 ist es C ) reicht bei meinem Problem völlig aus und ist ja auch sehr flexibel anzuwenden.

    Vielen Dank, das ist die Lösung

Similar Threads

  1. Antworten: 7
    Letzter Beitrag: 13-01-15, 16:43
  2. aufruf von qstrup
    By rr2001 in forum IBM i Hauptforum
    Antworten: 9
    Letzter Beitrag: 27-05-14, 13:44
  3. Pointer ins Nirwana nach Proc Aufruf???
    By AndreasH in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 22-09-02, 11:00
  4. Aufruf einer PC Anzeige von der AS/400 aus
    By it-wolf in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 19-07-02, 16:27
  5. Frage zu RPG: Aufruf RPG-Programm mit Parametern
    By hs in forum IBM i Hauptforum
    Antworten: 14
    Letzter Beitrag: 09-10-01, 12:06

Tags for this Thread

Berechtigungen

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