On 22-Sep-2016 11:49 -0500, Rob Berendt wrote:
Not all jobs in MSGW will show in QSYSOPR. […]

Interactive jobs do NOT go into MSGW when waiting on an inquiry
message. See
(http://archive.midrange.com/midrange-l/201604/msg00330.html)


Testing only the manner in which that HLL default-handler implements both the sending of an inquiry and then awaiting a reply, is not an exhaustive test of how the status of all interactive jobs will be presented when they are awaiting a message. Many inquiries will be sent to the *EXT program queue, for which the Display Messages panel will be presented, from which a reply is awaited; per display file [or panel group] interaction, the job appears with status DSPW.

But just as not all jobs in Message Wait (MSGW) status will use the QSYSOPR [aka *SYSOPR] Message Queue (MSGQ) to send an inquiry [and from which to await a reply], not all interactive jobs that are waiting on a reply to an inquiry must *only* appear as Display Wait (DSPW) status.

Whether an interactive job appears in MSGW depends mostly on awaiting a reply from an inquiry made to an External Message Queue (*MSGQ), and then whether or not the inquiry caused a panel [i.e. the Display Program Messages screen] to appear at the interactive workstation. If no panel is presented [mostly, if the message does not /break/ to the display due to the combination of job setting Break Message Handling (BRKMSG) and the MsgQ setting Delivery (DLVRY) that are established], then the job will appear in MSGW -- with the msg CPI2404 "Waiting for reply to message on message queue &2." showing in the status line. If the interactive job is seen in MSGW, then if the user issues a SysRqs-4 to Display Message (DSPMSG), then the job will go into DSPW [per presentation of the Display Messages panel], but the job would still be awaiting the reply, such that exiting from that panel will return the job status to MSGW, from the DSPW status.

Review the effects of Job Status value shown in WRKACTJOB after each Send User Message request, before an answer is supplied.

pgm
dcl &rpyval *char 01
dcl &tomsgq *char 10
dcl &tomsgl *char 10
dcl &brkmsg *char 07
rtvjoba brkmsg(&brkmsg)
chgjob brkmsg(*hold)
rtvusrprf *current msgq(&tomsgq) msgqlib(&tomsgl)
SNDUSRMSG MSGID(CPA32B2) MSGF(QCPFMSG) +
MSGDTA('THE_FILE THE_LIBR ') +
VALUES(*NONE) DFT(*MSGDFT) MSGTYPE(*INQ) +
TOMSGQ(*EXT) MSGRPY(&RPYVAL)
SNDUSRMSG MSGID(CPA32B2) MSGF(QCPFMSG) +
MSGDTA('THE_FILE THE_LIBR ') +
VALUES(*NONE) DFT(*MSGDFT) MSGTYPE(*INQ) +
TOMSGQ(&tomsgl/&tomsgq) MSGRPY(&RPYVAL)
chgjob brkmsg(&brkmsg)
endpgm



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.