Zitat Zitat von kuempi von stein Beitrag anzeigen
...
Und ansonsten könnte man ja im CL immer erst mit STRISDB versuchen, Fehlermeldung abfangen und wenn Fehler dann eben STRDBG?

kuempi
das war eine gute Idee!
Sorum habe ich es nicht hinbekommen, da ich nach Möglichkeit STRDBG verwenden möchte und nicht den ISDB.

Aber einfach STRDBG aufrufen und dann schauen, wie der Debugger reagiert, das geht.
Wen es interessiert hier das Ergebnis:

Code:
            CMD        PROMPT('Starten Debugger abh. vom Typ')       
 
            PARM       KWD(PGM) TYPE(OBJ1) MIN(1) +                  
                         PROMPT('Programmname')                      
 
            PARM       KWD(SRCM) TYPE(*CHAR) LEN(10) CHOICE('Name') +
                         PROMPT('Quelle Teildatei')                  
            PARM       KWD(SRCF) TYPE(OBJ2) MIN(1) PROMPT('Quelle +  
                         Datei')                                     
 
OBJ1:       QUAL       TYPE(*NAME) LEN(10) CHOICE('Programmname')    
            QUAL       TYPE(*NAME) LEN(10) CHOICE('Bibliothek')      
 
OBJ2:       QUAL       TYPE(*NAME) LEN(10) CHOICE('Dateiname')       
            QUAL       TYPE(*NAME) LEN(10) CHOICE('Bibliothek')
Code:
             PGM        PARM(&PGMOLB &SRCMBR &SRCFLB)                   
 
             DCL        VAR(&PGMOLB) TYPE(*CHAR) LEN(20)                
             DCL        VAR(&SRCMBR) TYPE(*CHAR) LEN(10)                
             DCL        VAR(&SRCFLB) TYPE(*CHAR) LEN(20)                
 
             DCL        VAR(&PGMLIB) TYPE(*CHAR) LEN(10)                
             DCL        VAR(&PGM   ) TYPE(*CHAR) LEN(10)                
             DCL        VAR(&SRCLIB) TYPE(*CHAR) LEN(10)                
             DCL        VAR(&SRCFIL) TYPE(*CHAR) LEN(10)                
 
             DCL        VAR(&MHKTOOL) TYPE(*CHAR) LEN(10)               
 
 
/*  Standardwerte + Initialisierungen  */                               
             CHGVAR     VAR(&PGM   ) VALUE(%SST(&PGMOLB 1 10))          
             CHGVAR     VAR(&PGMLIB) VALUE(%SST(&PGMOLB 11 10))         
             CHGVAR     VAR(&SRCFIL) VALUE(%SST(&SRCFLB 1 10))          
             CHGVAR     VAR(&SRCLIB) VALUE(%SST(&SRCFLB 11 10))         
             IF         COND(&SRCMBR = ' ') THEN(CHGVAR VAR(&SRCMBR) +  
                          VALUE('*N'))                                  
             IF         COND(&SRCFIL = ' ') THEN(CHGVAR VAR(&SRCFIL) +  
                          VALUE('*N'))                                  
             IF         COND(&SRCLIB = ' ') THEN(CHGVAR VAR(&SRCLIB) +  
                          VALUE('*N'))                                  
 
 
/*  Debugger prüfen  */                                                 
             STRDBG     PGM(&PGMLIB/&PGM)                               
             DSPBKP     OUTPUT(*PRINT) PGM(*ALL)                        
               MONMSG     MSGID(CPF1906 CPF1999) EXEC(GOTO +            
                          CMDLBL(L_STRDBG))                             
             ENDDBG                                                     
             DLTSPLF    FILE(QPDBGDSP) SPLNBR(*LAST)                    
               MONMSG     MSGID(CPF0000)                                
 
 
L_ISDB:                                                                 
             STRISDB    PGM(&PGMLIB/&PGM) SRCMBR(&SRCMBR) +             
                          SRCF(&SRCLIB/&SRCFIL)                         
               MONMSG     MSGID(CPF0000) EXEC(DO)                       
                 ?STRISDB PGM(&PGMLIB/&PGM) SRCMBR(&SRCMBR) +           
                          SRCF(&SRCLIB/&SRCFIL)                         
                 ENDDO                                                  
             GOTO       CMDLBL(ENDE)                                    
 
 
L_STRDBG:                                                              
             GOTO       CMDLBL(ENDE)                                   
 
 
 
 ENDE:       ENDPGM
Kann man bestimmt noch verschönern, ist auch nicht auf Herz+Nieren getestet, aber es funktioniert schon mal für RPGLE, RPT mit+ohne *LSTDBG.

Vieren Dank Euch beiden!
Christian