Iganacio
Te envio un fuente de un CL que recibe como parametro la cola de salida y la salva en un archivo llamado TEST133 que esta definido como un archivo de un solo campo de 133 posiciones
espero que te sirva
Escapadas, fines de semana, vacaciones, reservas. Organiza y contrata tus viajes aqu�.
PGM PARM(&OUTQ)
DCL VAR(&OUTQ) TYPE(*CHAR) LEN(10)
DCL VAR(&CONT) TYPE(*DEC) LEN(2 0) VALUE(0)
DCLF FILE(TEST133)
/* */
CHKOBJ OBJ(&OUTQ) OBJTYPE(*OUTQ)
MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(FINPGM))
/* */
RMVM FILE(TEST133) MBR(*ALL)
MONMSG MSGID(CPF7301 CPF7303)
ADDPFM FILE(TEST133) MBR(DSPOUTQ) TEXT('miembro +
para recoger el dspoutq')
OVRPRTF FILE(QPRTSPLQ) HOLD(*YES)
WRKOUTQ OUTQ(&OUTQ) OUTPUT(*PRINT)
CPYSPLF FILE(QPRTSPLQ) TOFILE(TEST133) SPLNBR(*LAST)
MONMSG MSGID(CPF3303) EXEC(GOTO CMDLBL(FINPGM))
/* */
SIGUE: RCVF
MONMSG MSGID(CPF0864) EXEC(GOTO CMDLBL(FINLEER))
CHGVAR VAR(&CONT) VALUE(&CONT + 1)
IF COND(&CONT *LT 3) THEN(GOTO CMDLBL(SIGUE))
IF COND(&CONT *GT 55) THEN(DO)
CHGVAR VAR(&CONT) VALUE(1)
GOTO CMDLBL(SIGUE)
ENDDO
IF COND(%SST(&TEST133 83 10) *EQ ' ') +
THEN(GOTO CMDLBL(SIGUE))
/* MOVER VARIABLES Y HACER CPYSPLF DE CADA FICHERO DE SPOOL +
CREANDO MIEMBROS EN TEST133 */
IF COND(%SST(&TEST133 73 1) *EQ ' ') +
THEN(CHGVAR VAR(%SST(&TEST133 73 1)) +
VALUE('0'))
IF COND(%SST(&TEST133 74 1) *EQ ' ') +
THEN(CHGVAR VAR(%SST(&TEST133 74 1)) +
VALUE('0'))
IF COND(%SST(&TEST133 75 1) *EQ ' ') +
THEN(CHGVAR VAR(%SST(&TEST133 75 1)) +
VALUE('0'))
IF COND(%SST(&TEST133 76 1) *EQ ' ') +
THEN(CHGVAR VAR(%SST(&TEST133 76 1)) +
VALUE('0'))
ADDPFM FILE(TEST133) MBR('P' *CAT +
(%SST(&TEST133 94 5) *CAT (%SST(&TEST133 +
73 4)))) TEXT(%SST(&TEST133 1 50))
CPYSPLF FILE(%SST(&TEST133 2 10)) TOFILE(TEST133) +
JOB(%SST(&TEST133 93 6)/%SST(&TEST133 13 +
10)/%SST(&TEST133 82 10)) +
SPLNBR(%SST(&TEST133 73 4)) TOMBR('P' +
*CAT (%SST(&TEST133 94 5)) *CAT +
(%SST(&TEST133 73 4))) CTLCHAR(*FCFC)
GOTO CMDLBL(SIGUE)
FINLEER:
/* */
RMVM FILE(TEST133) MBR(DSPOUTQ)
FINPGM: ENDPGM
