/* PROGRAM: VRUNQRYC */ /* AUTHOR : Victor Voilevitch */ /* DATE : 15 Nov 1998 */ /* */ /* DESCRIPTION: */ /* Utility program that run query */ /* for the EACH member in file */ /* */ /* PARAMETERS: */ /* FULLFILE - qaulified file name */ /* RCDSEL - record select (Y/N) */ /* */ /* ================================================================= */ PGM PARM(&FULLFILE &RCDSEL) DCL VAR(&FULLFILE) TYPE(*CHAR) LEN(20) DCL VAR(&RCDSEL) TYPE(*CHAR) LEN(1) DCL VAR(&LIB) TYPE(*CHAR) LEN(10) DCL VAR(&FILE) TYPE(*CHAR) LEN(10) DCL VAR(&ERR) TYPE(*CHAR) LEN(1) DCL VAR(&ATTR) TYPE(*CHAR) LEN(10) /********************************************************************/ /* Start Of Program */ /********************************************************************/ CHGVAR VAR(&LIB) VALUE(%SST(&FULLFILE 11 10)) CHGVAR VAR(&FILE) VALUE(%SST(&FULLFILE 1 10)) SNDPGMMSG MSG('=== VRUNQRYC for' *BCAT &LIB *TCAT '/' + *TCAT &FILE *BCAT '===') TOPGMQ(*EXT) + MSGTYPE(*COMP) RTVOBJD OBJ(&LIB/&FILE) OBJTYPE(*FILE) OBJATR(&ATTR) MONMSG MSGID(CPF9812) EXEC(DO) SNDPGMMSG MSGID(CPF9898) MSGF(QCPFMSG) MSGDTA('File + not found') MSGTYPE(*COMP) GOTO CMDLBL(END) ENDDO /* Pass additional parameter through userspace */ /* Create userspace */ CALL PGM(QUSCRTUS) PARM('VRUNQRYCUSQTEMP' + PARAMETERS X'00000001' X'00' *ALL 'For + parms transfer') MONMSG MSGID(CPF0000) /* Put info in userspace */ CALL PGM(QUSCHGUS) PARM('VRUNQRYCUSQTEMP' + X'00000001' X'00000001' &RCDSEL '2') MONMSG MSGID(CPF0000) IF COND(&ATTR = 'PF') THEN(CALL PGM(V89_CL) + PARM(&LIB &FILE 'V87_CL' 'N' &ERR)) IF COND(&ATTR = 'LF') THEN(CALL PGM(V88_CL) + PARM(&LIB &FILE 'V87_CL' 'N' &ERR)) IF COND((&ATTR *NE 'LF') *AND (&ATTR *NE 'PF')) + THEN(SNDPGMMSG MSGID(CPF9898) + MSGF(QCPFMSG) MSGDTA('VRUNQRYC: do not + know what to do with *FILE' *BCAT &ATTR + *BCAT 'attr') MSGTYPE(*COMP)) IF COND(&ERR = '0') THEN(DO) SNDPGMMSG MSGID(CPF9898) MSGF(QCPFMSG) + MSGDTA('VRUNQRYC completed Ok') + MSGTYPE(*COMP) GOTO CMDLBL(END) ENDDO ERROR: SNDPGMMSG MSGID(CPF9898) MSGF(QCPFMSG) + MSGDTA('VRUNQRYC completed with Error') + TOPGMQ(*EXT) MSGTYPE(*COMP) END: ENDPGM