Hallo Markus,

vielen Dank für Deine Mühe. Ich habe mich allerdings nun doch mal aufgerafft und habe mich zumindest ein bischen in ILERPG-IV "reingewurstelt".

Es ist mir doch tatsächlich gelungen mein Problem zu lösen.

Nochmals recht herzlichen Dank für Euere Hilfe.

Den Code hab ich mal mit eingeblendet, vielleicht kanns nochwer auch brauchen.

Code:
      * * * *  BEGINN DER CL-Quelle  * * * *


/*********************************************************************/
/*                                                                   */
/* Prüfen, ob Abschluss-Job noch läuft.                              */
/*                                                                   */
/* ================================================================= */
/*                                                                   */
/* Quelle: RZSRC/QCLSRC                                              */
/* Objekt: RZOBJ/CHKABSCHL  *PGM CLP                                 */
/*                                                                   */
/* ================================================================= */
/*                                                                   */
/* 03.12.2002 von Stefan Lang.                                       */
/*                                                                   */
/*********************************************************************/

             PGM


             DCL        &sws       *CHAR   8  /* UPSI Byte          */

             DCL        &strdat    *CHAR   6  /* Startdatum         */
             DCL        &strdatiso *CHAR  10  /* Startdatum *ISO    */
             DCL        &strtim    *CHAR   6  /* Startzeit          */
             DCL        &strtimiso *CHAR  15  /* Startzeit *ISO     */
             DCL        &strstamp  *CHAR  26  /* Timestamp *ISO     */

             DCL        &actdat    *CHAR   6  /* Aktuelles Datum    */
             DCL        &actdatiso *CHAR  10  /* Aktuelles Dat.*ISO */
             DCL        &acttim    *CHAR   6  /* Aktuelle Zeit      */
             DCL        &acttimiso *CHAR  15  /* Aktuelle Zeit *ISO */
             DCL        &actstamp  *CHAR  26  /* Timestamp *ISO     */

             DCL        &maxtime   *DEC (5 0) /* max. erlaubte Zeit */
                                              /* in Minuten         */
             DCL        &duration  *DEC (5 0) /* abgelaufene Zeit   */
                                              /* in Minuten         */
             DCL        &rc        *CHAR   1  /* Return-Code        */
                                              /* 0 = OK             */
                                              /* 1 = ERROR          */

             DCL        &abschl    *CHAR   1  /* ABSCHLUSS (J/N)    */
             DCL        &periode   *CHAR   2  /* ABSCHLUSS-Periode  */
                                              /* TG = Täglich       */
                                              /* WO = Wöchentlich   */


/* - - - - - Globale Fehlerfalle - - - - - - - - - - - - - - - - - - */

             MONMSG     CPF0000

/* - - - - - Vorgeplänkel  - - - - - - - - - - - - - - - - - - - - - */

             RTVSYSVAL  SYSVAL(QDATE) RTNVAR(&strdat)
             CVTDAT     DATE(&strdat) TOVAR(&strdatiso) +
                          FROMFMT(*SYSVAL) TOFMT(*ISO) TOSEP(*NONE)
             RTVSYSVAL  SYSVAL(QTIME) RTNVAR(&strtim)
             CHGVAR     &strtimiso (%SST(&strtim 1 2) *CAT '.' *CAT +
                                    %SST(&strtim 3 2) *CAT '.' *CAT +
                                    %SST(&strtim 5 2) *CAT '.' *CAT +
                                    '000000')
             CHGVAR     &strstamp (&strdatiso *CAT '-' *CAT &strtimiso)
             RTVDTAARA  DTAARA(ABSCHLUSS (46 2)) RTNVAR(&periode)

             CHGVAR     &maxtime  60  /* Default, falls <> TG/WO     */
             IF         (&periode *EQ 'TG') CHGVAR &maxtime  30
             IF         (&periode *EQ 'WO') CHGVAR &maxtime 180

/* - - - - - Schleife      - - - - - - - - - - - - - - - - - - - - - */

 LOOP:       DLYJOB     DLY(60)

             RTVJOBA    SWS(&sws)  /* EOJ, wenn SWS <> X'00000000'   */
             IF         (&sws *NE '00000000') GOTO EXIT

             RTVDTAARA  DTAARA(ABSCHLUSS (1 1)) RTNVAR(&abschl)

             IF         (&abschl *EQ 'N') GOTO EXIT


             RTVSYSVAL  SYSVAL(QDATE) RTNVAR(&actdat)
             CVTDAT     DATE(&actdat) TOVAR(&actdatiso) +
                          FROMFMT(*SYSVAL) TOFMT(*ISO) TOSEP(*NONE)
             RTVSYSVAL  SYSVAL(QTIME) RTNVAR(&acttim)
             CHGVAR     &acttimiso (%SST(&acttim 1 2) *CAT '.' *CAT +
                                    %SST(&acttim 3 2) *CAT '.' *CAT +
                                    %SST(&acttim 5 2) *CAT '.' *CAT +
                                    '000000')
             CHGVAR     &actstamp (&actdatiso *CAT '-' *CAT &acttimiso)

             CALL       CLCTIMDIF (&strstamp &actstamp &duration &rc)

             IF         (&rc *NE '0') DO
                        SNDMSG  +
                        MSG('Achtung: Im Programm CHKABSCHL ist ein +
                             Fehler aufgetreten. Programm wird +
                             beendet. Details siehe Joblog.') +
                        TOUSR(*SYSOPR)
                        CHGJOB     LOG(4 00 *SECLVL) LOGCLPGM(*YES)
                        DSPJOBLOG  OUTPUT(*PRINT)
                        GOTO       EXIT
                        ENDDO

             IF         (&maxtime > &duration) GOTO LOOP


EXIT:        ENDPGM


      * * * *  BEGINN DER RPGLE-Quelle  * * * *


      *********************************************************************
      *                                                                   *
      * ----------------------------------------------------------------- *
      *                                                                   *
      * Berechnen der Zeitdifferenz (in Minuten) zwischen zwei Timestamps *
      *                                                                   *
      * ----------------------------------------------------------------- *
      *                                                                   *
      *                                                                   *
      * Programm . . . . . . . . :  CLCTIMDIF                             *
      *   Bibliothek . . . . . . :    RZOBJ                               *
      *                                                                   *
      * Quellendatei . . . . . . :  QRPGLESRC                             *
      *   Bibliothek . . . . . . :    RZSRC                               *
      * Quellenteildatei . . . . :  CLCTIMDIF                             *
      *                                                                   *
      * Autor  . . . . . . . . . :  Stefan Lang                           *
      * Erstelldatum . . . . . . :  04.12.2002                            *
      * Version  . . . . . . . . :  V4R5M0                                *
      *                                                                   *
      *                                                                   *
      * ----------------------------------------------------------------- *
      *                                                                   *
      * INPUT                                                             *
      *                                                                   *
      * FR#TimeStamp   26Z    - Von  (yyyy-mm-dd-hh.mm.ss.mmmmmm) *ISO    *
      * TO#TimeStamp   26Z    - Nach (yyyy-mm-dd-hh.mm.ss.mmmmmm) *ISO    *
      *                                                                   *
      * OUTPUT                                                            *
      *                                                                   *
      * RV#Duration     5P 0  - Dauer in Minuten                          *
      * RV#RetCde       1A    - Return-Code (0 = kein Fehler, 1 = Fehler) *
      *                                                                   *
      *                                                                   *
      *********************************************************************
      *
     HDatEdit(*DMY)
     HDatFmt(*EUR)
     HDebug(*Yes)
     HDecEdit('0,')
     HExprOpts(*MaxDigits)
     HOption(*ShowCpy : *NoDebugIO : *SrcStmt)
     HTimFmt(*HMS)
      *
     DFR#TimeStamp     S               Z
     DTO#TimeStamp     S               Z
      *
     DRV#Duration      S              5P 0
     DRV#RetCde        S              1A
      *
     C     *Entry        PList
     C                   Parm                    FR#TimeStamp
     C                   Parm                    TO#TimeStamp
     C                   Parm                    RV#Duration
     C                   Parm                    RV#RetCde
      *
     C                   Eval      RV#Duration = 0
     C                   Eval      RV#RetCde = '0'
      *
     C                   Do
      *
     C                   Test                    FR#TimeStamp           RT
     C                   Test                    TO#TimeStamp           RT
      *
     C                   If        *InRT = *On
     C                   Eval      RV#RetCde = '1'
     C                   Leave
     C                   EndIf
      *
     C     TO#TimeStamp  SubDur    FR#TimeStamp  #Dur:*MN          5 0
     C                   Z-Add     #Dur          RV#Duration
      *
     C                   EndDo
      *
     C                   Eval      *InLR = *On