On Wed04-Apr-2011 08:36 , Rusling, John wrote:
I'm trying to compile a clle program and keep getting: "CPD2436 30 If
MSGTYPE has *NEXT or *PRV specified, MSGKEY is required."
It happens on the 2nd invocation of the rcvmsg command. (pgm below)
Even after correcting the MsgKey and KeyVar issue, consider that when
a RCVMSG receives no message, the received parameter values including
the key value are blank. Attempting to receive a message by that key or
relative to that key, will invariably lead to CPF2410.
But traversing the messages [from the last and those previous] in the
*EXT [external] program message queue would seem to be futile for a
message that would have been signaled to the program message queue of
the active program, to the PGMQ(*SAME). That is to say, the CPF1002 for
the failing ALCOBJ will be sent to the CL program itself, not to the
external message queue.? Unless I have totally forgotten about or have
never understood how the message handling feature functions, the current
approach referencing PGMQ(*EXT) seems awry.? Though more likely, I
believe that as I had suggested previously, the spooled joblog to show
the "To program" information would best be reviewed to determine how the
message might best be retrieved.