Hallo Zusammen,

ich wende mich mal wieder an Euch, weil ich bei einem Problem auf dem Schlauch stehe...

Folgender Tatbestand:

In einem CL-Programm (im Batch) wird mehrmals ein Programm aufgerufen, welches unter Umständen eine Spool erzeugt. Wenn die Spool erzeugt wurde, soll diese in eine Datei kopiert werden.
Problem: falls beim zweiten Programmaufruf keine Spool erzeugt wird, wird die des ersten Aufrufes kopiert.
Ich bin folgendermassen vorgegangen:

.
.
.
OVRDBF FILE(DATEI) TOFILE(DATEIA)
CALL PGM(PGMXX) /* für mandant A */
RTVJOBA JOB(&JOB) USER(&USER) NBR(&NBR)
CPYSPLF FILE(QSYSPRT) TOFILE(TEST) +
(&NBR/&USER/&JOB) SPLNBR(*LAST) +
MBROPT(*ADD) CTLCHAR(*NONE)

OVRDBF FILE(DATEI) TOFILE(DATEIB)
CALL PGM(PGMXX) /* für mandant B */
RTVJOBA JOB(&JOB) USER(&USER) NBR(&NBR)
CPYSPLF FILE(QSYSPRT) TOFILE(TEST) +
(&NBR/&USER/&JOB) SPLNBR(*LAST) +
MBROPT(*ADD) CTLCHAR(*NONE)
.
.
.

Wie gesagt, im Falle des PGM-Aufrufs für B wird kein Spool erzeugt, aber trotzdem eins (das Erste) kopiert, obwohl ich SPLNBR (*LAST) angegeben habe und die Spoolnummer im Job auch vergeben wird...

Gibt es evtl eine Möglichkeit die jeweils letzte SPLNBR eines Jobs über eine CL-Variable abzufragen damit ich diese anstatt *LAST beim CPYSPLF angeben kann?
Oder hat hier noch jemand eine andere Idee ohne das Druckpgm ändern zu müssen???

Danke für Eure Bemühungen!

Andreas