Hallo,

vor Urzeiten hatte ich dasselble Problem, ich hatte es so gelöst:

DCL VAR(&USRLBL) TYPE(*CHAR) LEN(275)
DCL VAR(&CURLIB) TYPE(*CHAR) LEN(10)
DCL VAR(&USRLIBL) TYPE(*CHAR) LEN(275)
DCL VAR(&CMD ) TYPE(*CHAR) LEN(800)
DCL VAR(&CMDLEN) TYPE(*DEC) LEN(15 5) VALUE(800)

RTVJOBA USRLIBL(&USRLIBL) CURLIB(&CURLIB)
IF COND(&CURLIB = *NONE) THEN(CHGVAR +
VAR(&CURLIB) VALUE(*CRTDFT))

CHGVAR VAR(&USRLBL) VALUE( +
%SST(&USRLIBL 01 10) !! ' ' !! +
%SST(&USRLIBL 12 10) !! ' ' !! +
%SST(&USRLIBL 23 10) !! ' ' !! +
%SST(&USRLIBL 34 10) !! ' ' !! +
%SST(&USRLIBL 45 10) !! ' ' !! +
%SST(&USRLIBL 56 10) !! ' ' !! +
%SST(&USRLIBL 67 10) !! ' ' !! +
%SST(&USRLIBL 78 10) !! ' ' !! +
%SST(&USRLIBL 89 10) !! ' ' !! +
%SST(&USRLIBL 100 10) !! ' ' !! +
%SST(&USRLIBL 111 10) !! ' ' !! +
%SST(&USRLIBL 122 10) !! ' ' !! +
%SST(&USRLIBL 133 10) !! ' ' !! +
%SST(&USRLIBL 144 10) !! ' ' !! +
%SST(&USRLIBL 155 10) !! ' ' !! +
%SST(&USRLIBL 166 10) !! ' ' !! +
%SST(&USRLIBL 177 10) !! ' ' !! +
%SST(&USRLIBL 188 10) !! ' ' !! +
%SST(&USRLIBL 199 10) !! ' ' !! +
%SST(&USRLIBL 210 10) !! ' ' !! +
%SST(&USRLIBL 221 10) !! ' ' !! +
%SST(&USRLIBL 232 10) !! ' ' !! +
%SST(&USRLIBL 243 10) !! ' ' !! +
%SST(&USRLIBL 254 10) !! ' ' !! +
%SST(&USRLIBL 265 10) )
...
/* alte Libl zurück */
CHGVAR VAR(&CMD) VALUE( +
'CHGLIBL LIBL(' !< &USRLBL !< ') CURLIB(' !< &CURLIB !< ')'
CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN)



Ich muss gestehen, dass ich nicht mehr genau weiß warum...
Und mittlerweile gibt es mehr als 25 Bibliotheken.

Aber vielleicht hilft das?

Gruß, Christian