|
Hmm....maybe that's the problem. Here's the SNDPGMMSG from the vendor's code: SNDPGMMSG MSG(&MESSAGE) MSGTYPE(*COMP) Pretty vanilla... Here's my code: * QMHRCVPM (Receive Program Message) API parameters D PmMessage S 1024 D PmMsgLen S 10U 0 Inz(%Len(PmMessage)) D PmFormat S 8 Inz('RCVM0100') D PmCalStkEnt S 4 Inz('*') D PmCalStkEntCnt S 10U 0 Inz(*Zero) D PmMsgType S 10 Inz('*ANY') D PmMsgKey S 4 Inz(*Blanks) D PmWaitTime S 10U 0 Inz(*Zero) D PmMsgAction S 10 Inz('*SAME') // Receive the last completion message. QUSBN = *Blanks; QUSBNB = 8; CallP QMHRCVPM(PmMessage : PmMsgLen : PmFormat : PmCalStkEnt : PmCalStkEntCnt : PmMsgType : PmMsgKey : PmWaitTime : PmMsgAction : QUSBN); The vendor's code is CLP, which is called by the vendor's command. I wonder if I should call the command processing program directly? > -------- Original Message -------- > Subject: Re: Message Processing > From: "Scott Klement" <midrange-l@xxxxxxxxxxxxxxxx> > Date: Wed, September 29, 2004 2:05 pm > To: "Midrange Systems Technical Discussion" <midrange-l@xxxxxxxxxxxx> > > Are you accounting for the fact that another program (called 'QCMDEXC') is > in-between the message sender and receiver? I know QCMDEXC will propigate > escape messages to it's caller, but I don't know about *COMP. > > In fact, I don't know if I've EVER tried to receive a *COMP message. > Maybe I have and I just can't remember it. (that happens!) > > Have you trying monkeying with which call stack entry you're sending to? > All you say is "it's the right one". > > If all else fails, there's an API that you can use to get the data out of > the job log. That's often the only solution. > > > On Wed, 29 Sep 2004 michael@xxxxxxxxxxxxxxxxxx wrote: > > > I *think* the reason I don't like message processing is because I'm > > stoopid. Here's my deal...PGMA calls PGMB. PGMB does a bunch of stuff, > > but eventually sends a message to PGMA. PGMA is RPG, PGMB is a command > > called by QCMDEXC. If I display the message details of the message I > > want to receive (viewed through my job log), it has the correct from > > program and to program. I want to use the QMHRCVPM (Receive Program > > Message) API to get that message, parse it, and do something based on > > the contents. When I make the call to QMHRCVPM, it executes but returns > > nothing. I'm using *ANY for the message type (tried *COMP but that > > didn't work), *EXT for the call stack entry (tried * but that didn't > > work). > > > > Please...tell me what I'm doing wrong. All I can offer is the ability to > > feel smarter than me. Not much, but it's better than a sharp stick in > > the eye. > -- > This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list > To post a message email: MIDRANGE-L@xxxxxxxxxxxx > To subscribe, unsubscribe, or change list options, > visit: http://lists.midrange.com/mailman/listinfo/midrange-l > or email: MIDRANGE-L-request@xxxxxxxxxxxx > Before posting, please take a moment to review the archives > at http://archive.midrange.com/midrange-l.
As an Amazon Associate we earn from qualifying purchases.
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.