/*************************************************************************/ /* Program Id........... PROMPTER - Generic prompt processor */ /* */ /* Programmer........... Steven Croy */ /* Analyst.............. Steven Croy */ /* Date coded........... 04/12/2006 */ /* */ /* Function............. This provides the override information */ /* to select the correct window to */ /* process. */ /* */ /* Compiler options..... *OWNER */ /* */ /*************************************************************************/ /*=======================================================================*/ /* Program and Declarative Section: */ /*=======================================================================*/ PGM PARM( + &PRGNAM + &WINDOW + &DATA + ) /*-----------------------------------------------------------------------*/ /* Constant definitions */ /* Variable Type Length Value */ /*-----------------------------------------------------------------------*/ DCL &#ON *CHAR LEN(1) VALUE('1') /*-----------------------------------------------------------------------*/ /* Variable definitions */ /* Variable Type Length Value */ /*-----------------------------------------------------------------------*/ DCL &PRGNAM *CHAR LEN(10) DCL &WINDOW *CHAR LEN(10) DCL &DATA *CHAR LEN(256) DCL &RDATA *CHAR LEN(256) DCL &MSGID *CHAR LEN(7) DCL &MSGDTA *CHAR LEN(100) DCL &DSPSTRING *CHAR LEN(255) DCL &DSPTITLE *CHAR LEN(27) /*=======================================================================*/ /* Begin Procedure Section: */ /* Define monitor messages to prevent a process from sending CPF */ /* error messages to the user, or operator. Point to a error */ /* handling section of the program. */ /*=======================================================================*/ MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(ERROR)) CHKOBJ OBJ(QWNDSRC) OBJTYPE(*FILE) MBR(&PRGNAM) AUT(*USE) MONMSG MSGID(CPF9815) EXEC(GOTO CMDLBL(MONITOR)) /*-----------------------------------------------------------------------*/ /* Call RPG program to display help window */ /*-----------------------------------------------------------------------*/ OVRDBF FILE(INPUT) TOFILE(QWNDSRC) MBR(&PRGNAM) + SECURE(*YES) OVRSCOPE(*CALLLVL) CALLPRC PRC(READWINTXT) PARM((&PRGNAM) (&WINDOW)) + RTNVAL(&RDATA) MONMSG MSGID(RNX0224) DLTOVR FILE(INPUT) LVL(*) CHGVAR VAR(&DATA) VALUE(&RDATA) GOTO CMDLBL(EndPgm) /*=======================================================================*/ /* Help text not available section */ /*=======================================================================*/ MONITOR: SNDPGMMSG MSGID(CPD0006) MSGF(*LIBL/QCPFMSG) + MSGDTA(' Could not find help member or + prompt for program ' *CAT &PRGNAM) + TOPGMQ(*EXT) MSGTYPE(*STATUS) GOTO CMDLBL(EndPgm) /*=======================================================================*/ /* Error Handling Section: */ /* Define a method of sending diagnostic and escape messages */ /* to prevent CPF messages from being passed to the user for */ /* reply, or action, (C G I R D S). */ /*=======================================================================*/ Error: RCVMSG MSGDTA(&MSGDTA) MSGID(&MSGID) MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(EndPgm)) SNDPGMMSG MSGID(&MSGID) MSGF(QCPFMSG) MSGDTA(&MSGDTA) + TOPGMQ(*PRV) MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(EndPgm)) EndPgm: RETURN ENDPGM