[NEWSboard IBMi Forum]
Seite 2 von 2 Erste 1 2
  1. #13
    Registriert seit
    Apr 2006
    Beiträge
    49
    ... noch was vergessen: kann mir vielleicht jemand sagen wie ich herausbekomme, welche bibliothek nur teilweise gesichert wurde; finde im joblog einfach nichts ?????

    358 Bibliotheken gesichert, 1 teilweise gesichert, 0 Objekte nicht gesichert.

  2. #14
    Registriert seit
    Nov 2003
    Beiträge
    2.304
    Sag' mal, sind meine Antworten für euch etwa unsichtbar?

    Wenn Systemreferenzcode A900 3C70 angezeigt wird, ist das kein Fehler, sondern ein Hinweis, daß das System im Status des eingeschränkten Betriebs beendet wurde und ein Stapeljob läuft!

    Du machst ja ein SNDSBS *ALL von diesem Stapeljob aus. Gib' doch mal ein passendes Zeitlimit für Stapelverarbeitung (Parameter BCHTIMLMT) an, damit eure Maschine auch dann wieder zu sich kommt, falls der Stapeljob steckenbleibt.

    Falls du sehen willst, welche Objekte nicht gesichert wurden, kannst du den SAVLIB mit Parameter OUTPUT(*PRINT) aufrufen. Dann wird eine Spooldatei erstellt, die genauere Angaben enthält.

  3. #15
    Registriert seit
    Apr 2006
    Beiträge
    49
    .... das ist vielleicht eine lösung, damit die maschine überhaupt wieder hochkommt, behebt aber leider nicht die eigentliche ursache. außerdem wie hoch sollte man den wert denn ansetzen, wenn in diesem batch-programm u.u. verschiedene dinge abgearbeitet werden, anhand deren man die laufzeit nicht 100%ig festelegen kann. haben wir bisher nicht benutzt den parameter und die prozedur läuft seit ca. 20 jahren so.
    ich hätte gerne antworten auf die ursache des eigentlichen problems; aber trotzdem danke für den hinweis.

  4. #16
    Registriert seit
    Nov 2003
    Beiträge
    2.304
    MONMSGs beheben ja leider auch nicht die Ursache, können allerdings die negativen Auswirkungen eines Fehlers abfedern.

    Kannst du den Teil des SAVLIBs mit den ganzen MONMSGs hier einmal zeigen? Gibt es vielleicht auch programmweite MONMSGs in diesem CL-Programm?

    Das Zeitlimit solltest du so einstellen, daß die Maschine wieder rechtzeitig am nächsten morgen für interaktive Arbeiten zur Verfügung steht.

  5. #17
    Registriert seit
    Apr 2006
    Beiträge
    49
    also, fakt ist:
    1. ich habe die nicht gesicherten objekte gefunden und gelöscht; waren zwei spool-dateien.

    2. meine erste MONMSG-programmierung war scheinbar korrekt, nur hatte mein CL nie die möglichkeite diese abzufangen, so wie die jetzige version

    SAVLIB LIB(*NONSYS) .......
    MONMSG MSGID(CPF0000) EXEC(DO)
    SNDMSG MSG('...')
    GOTO CMDLBL(S0070)
    ENDDO


    die MONMSG steht wirklcih direkt hinter dem SAVLIB-befehl; weshalb kommte die CPF3777 an die Operator-Warteschlange durch ?

    ich war und bin immer noch der meinung, dass man mit MONMSG MSGID(CPF0000)
    ALLE CPF-meldungen abfängt, die aufgrund des vorherhigen befehls auftreten können.

    bin aber weiterhin um jeden rat dankbar.


    christian

  6. #18
    Registriert seit
    Apr 2006
    Beiträge
    49

    ....was sind programmweite MONMSG's

    .... blöde frage, sagt mir momentan aber leider nichts !??!?!

    christian

  7. #19
    Registriert seit
    Apr 2006
    Beiträge
    49

    STOP das ganze, habe den Fehler gefunden !!!!

    .... erklärung kommt sobald es definitiv ist !!!

  8. #20
    Registriert seit
    Nov 2003
    Beiträge
    2.304
    Zitat Zitat von c.b. Beitrag anzeigen
    .... blöde frage, sagt mir momentan aber leider nichts !??!?!
    Das sind MONMSGs, die direkt am Programmanfang, also nach den DCLs aber noch vor dem ersten Befehl im Programm notiert werden. Diese gelten für jeden Befehl, bei dem keines seiner eigenen MONMSGs den Fehler abfängt.

  9. #21
    Registriert seit
    Apr 2006
    Beiträge
    49

    .... der blödeste aller blöden programmiererfehler !!!

    sorry, tut mir ja wirklich leid und ist mir seit jahren nicht merh passiert; war scheinbar einfach mal wieder zeit dafür.
    ich habe ganz einfach das falsche programm geändert/umgewandelt; ganz klar, dass diese änderungen (incl. MONMSG) nicht gegriffen haben.
    ihr könnt mich gerne als blödesten programmierer im juli ans schwarze brett hängen !!!
    also meine erste MONMSG-programmierung war korrekt, MONMSG(CPF0000) funktioniert wie immer, ......

    sorry nochmals, bin wohl doch urlaubsreif (noch 2 wochen); aber trotzdem danke für eure unterstützung

    christian

  10. #22
    Registriert seit
    Nov 2003
    Beiträge
    2.304
    Macht doch nix. Sowas kommt vor. Hauptsache, die die MONMSGs funktionieren jetzt wie gewünscht.

    Das "Zeitlimit für Stapelverarbeitung" solltest du beim ENDSBS aber zur Sicherheit vielleicht doch zusätzlich entsprechend (z.B. auf 600 Minuten) einstellen. Man weiß ja nie, wegen was der Stapeljob irgendwann noch so alles steckenbleiben kann.

  11. #23
    Registriert seit
    Jul 2003
    Beiträge
    331

    Smile

    Zitat Zitat von kitvb1 Beitrag anzeigen
    Tut mir leid, aber meine Deutch kenntnis reicht nicht für ein lange antwort aus. Machs einfach mit englisch nai.

    My understanding is that one can use monmsg once per command only, but one can monmsg for several messages at a time in 2 different places.
    Example 1.
    Code:
    SAVLIB ...
    monmsg (cpf3785 cpf3786 cpf3787 whatever..) exec(do)
    crtsavf/rewind tape/whatever..
    goto redosavlib
    Example 2.
    Code:
    dcl...
    dcl...
    monmsg (cpf3785) exec(.....)
    monmsg (cpf3786) exec(.....)
    monmsg (cpf0000) exec(.....) 
     
    SAVLIB ...
    monmsg (cpf3787) exec(do)
    whatever
    ...
    enddo

    Die MONMSG-Liste hat mir heute geholfen !!!

  12. #24
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Eine Nachricht ist in 3 Teile gegliedert:
    XXXAABB
    XXX = Gruppe (z.B. CPF, RPG, TCP).
    AA = Hauptfehler (00 - FF)
    BB = Detailfehler (00 - FF)

    Daher kann man den MONMSG per Hierarchie aufbauen:

    1. MONMSG XXXAABB = Nur dieser Fehler
    2. MONMSG XXXAA00 = Nur diese Gruppe
    3. MONMSG XXX0000 = Nur dieser Typ
    4. MONMSG CPFxxxx = Spezifische Systemfehler
    5. MONMSG CPF0000 = Alle Fehler

    Warum wirkt CPF0000 ?
    Wenn z.B. ein RPGXXYY-Fehler nicht überwacht wird, löst das System eine CPF-Fehlermeldung aus dass eben diese Meldung nicht überwacht wurde.

    Zu obigem Beispiel könnte also eine Überwachung
    MONMSG CPF3700 => Fehlergruppe
    MONMSG CPF0000 => und der ganze Rest
    ausreichen.
    Hängt also vom Ziel ab.
    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. Java POI API auf I5 installieren / einrichten
    By User23 in forum IBM i Hauptforum
    Antworten: 19
    Letzter Beitrag: 10-05-06, 12:19
  2. Monmsg
    By Lissy1 in forum NEWSboard Programmierung
    Antworten: 4
    Letzter Beitrag: 29-09-05, 15:34
  3. Monmsg TCP3211 ?
    By Robi in forum NEWSboard Programmierung
    Antworten: 7
    Letzter Beitrag: 20-07-05, 15:27
  4. MONMSG für *INFO Nachrichten, oder anders...
    By AndreasW aus H in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 23-04-03, 15:59
  5. Frage zu MONMSG
    By hs in forum IBM i Hauptforum
    Antworten: 6
    Letzter Beitrag: 14-08-02, 08:09

Berechtigungen

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