[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jul 2002
    Beiträge
    43

    Question QCMDEXEC in free-RPG

    Hallo an alle Boarder,

    ich habe bei einem Prototype-PGM Aufruf (QCMDEXEC) ein Problem: der Programmaufruf wird fehlerhaft beendet (das kann passieren, da ich Objekte über den QCMDEXEC löschen möchte und wenn das Objekt schon nicht mehr existiert, dann kommt es zu einem Fehler)!
    Kann mir bitte jemand mal einen Hinweis geben, wie ich auf einen Programmfehler des QCMDEXEC im RPG reagieren kann, so dass mein RPG-Programm weiterläuft ??

    Bitte keine Hinweise, dass ich ein CL-Programm dafür aufrufen soll, ich möchte das über ein RPG lösen !!

    Wir haben eine AS/400 mit V5R2M0!

    Danke im Voraus für Eure Hilfe.

    Gruss Marc

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.270
    Am besten mit einer Monitor-Group:

    /free
    monitor;
    callp qcmdexec ...
    on-error *all;
    endmon;
    /end-free
    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

  3. #3
    KM is offline [professional_User]
    Registriert seit
    Apr 2003
    Beiträge
    1.005
    Hallo Marc,

    Du könntest das Ganze auch über die C-Funktion SYSTEM lösen. Dann kannst Du bei Bedarf die CPF-Nachricht abfragen. Dazu brauchst Du das Binderverzeichnis QC2LE. Die Definition sieht dann folgendermaßen aus:

    H BNDDIR('QC2LE')
    D SYSTEM PR 10I 0 EXTPROC('SYSTEM')
    D * VALUE OPTIONS(*STRING)
    D CPFMSG S 7 IMPORT('_EXCP_MSGID')
    D * VALUE OPTIONS(*STRING)
    /FREE
    SYSTEM('Befehl')
    .
    /END-FREE

    Gruß,
    KM

  4. #4
    Registriert seit
    Aug 2002
    Beiträge
    77
    sollte auch mit erweiterung E problemlos abzufangen sein. Ist einfach die Geschmacksfrage was man "hübscher" findet:
    Code:
    D AS400CMD        PR                  EXTPGM('QCMDEXC') 
    D  CMD                         512    CONST             
    D  LENCMD                       15P 5 CONST             
    /free
    monitor;
    AS400CMD('machwas');
    on-error *all;
    endmon;
    /end-free
    funktioniert genauso wie
    Code:
    callp(E) AS400CMD('machwas');
    Monitor benötigt halt ein paar mehr Zeilen, kann aber wunderbar die einzelnen Monitorgruppen abfragen.
    callp(E) ist ein Einzeiler, wenn dir der Fehler egal ist.
    In beiden Fällen kannst du über die SD Fehlercodes im Fehlerfall genauer abfragen.
    Gruß
    Andreas
    ***Wer einen Schreibfehler findet darf ihn behalten***

Similar Threads

  1. Datum-Konvertierung free rpg
    By loeweadolf in forum NEWSboard Programmierung
    Antworten: 6
    Letzter Beitrag: 14-03-08, 06:21
  2. Frei Porn Site!
    By Fucasdreh in forum NEWSboard Server Job
    Antworten: 0
    Letzter Beitrag: 10-01-07, 13:12
  3. Mehrere Bezugszahlen auf *off in Free RPG
    By mgraskamp in forum NEWSboard Programmierung
    Antworten: 13
    Letzter Beitrag: 16-02-06, 16:01
  4. FREE RPG .. TESTN
    By loeweadolf in forum NEWSboard Programmierung
    Antworten: 7
    Letzter Beitrag: 25-01-05, 07:43
  5. Free Rpg Zeitdauer errechnen
    By loeweadolf in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 12-07-04, 09:27

Berechtigungen

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