/*----------------------------------------------------------------MRB*/ /* Recupera ID de usuario y direccion de un usuario */ /*-------------------------------------------------------------------*/ /* Marti Riera 24/01/2005 */ /* http://www.recursos-as400.com/ */ /* mailto:mrierab@teleline.es */ /*-------------------------------------------------------------------*/ PGM PARM(&USER &USRID &DIR) DCL VAR(&USER) TYPE(*CHAR) LEN(10) DCL VAR(&USRID) TYPE(*CHAR) LEN(8) DCL VAR(&DIR) TYPE(*CHAR) LEN(8) DCL VAR(&EOF) TYPE(*LGL) VALUE('0') DCLF FILE(DSPDIRE) /* Comprobar si existe el usuario */ IF COND(&USER = '*CURRENT') THEN(DO) RTVJOBA USER(&USER) ENDDO ELSE DO CHKOBJ OBJ(&USER) OBJTYPE(*USRPRF) MONMSG MSGID(CPF9801) EXEC(DO) SNDPGMMSG MSGID(CPF9801) MSGF(QCPFMSG) MSGDTA(&USER + *CAT 'QSYS ' *CAT 'USRPRF') GOTO END ENDDO ENDDO /* Cargar variables de trabajo */ CHGVAR VAR(&USRID) VALUE(' ') CHGVAR VAR(&DIR) VALUE(' ') DSPDIRE USER(&USER) OUTPUT(*OUTFILE) OUTFILE(QTEMP/DSPDIRE) MONMSG MSGID(CPF9006) EXEC(GOTO END) /* Bucle de lectura */ READ: RCVF MONMSG MSGID(CPF0864) EXEC(CHGVAR VAR(&EOF) VALUE('1')) IF COND(&EOF *NE '1') THEN(DO) CHGVAR VAR(&USRID) VALUE(&WOSDDEN) CHGVAR VAR(&DIR) VALUE(&WOSDDGN) GOTO READ ENDDO /* Fin de programa */ END: RETURN ENDPGM