310 pts.
 Error msg not showing on display screen in AS/400
hi , i am using a rpgle with display file , & calling a clp . in cl i am using SNGPGMMSG command , i just want to see the error messange on display screen, but its not showing , it is going somewhere else. i can see that error message in DSPJOBLOG. but it should display on display screen. is there any way to do this.. Thanks ... :)

Software/Hardware used:
AS400,CLLE,RPGLE
ASKED: December 2, 2010  7:04 AM
UPDATED: December 3, 2010  7:59 AM

Answer Wiki:
Why not have the RPG program put the message on the screen? Phil
Last Wiki Answer Submitted:  December 2, 2010  9:10 am  by  philpl1jb   44,190 pts.
All Answer Wiki Contributors:  philpl1jb   44,190 pts.
To see all answers submitted to the Answer Wiki: View Answer History.


Discuss This Question:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _


 

Most likely, you’re sending it to the joblog or a program message queue (and the program isn’t displaying its messages) instead of to the display. But it’s hard to tell what might need to be changed without seeing the code.

Tom

 108,135 pts.

 

What is in the parameter for where you are sending it?
Is it going to the users message queue or workstation queue?
Do you need to have those set to be in break mode?

 32,885 pts.

 

This is source of clp which is called by rpgle, i am passing member name , Source file,Library as a entry parameter , & want show the source of that member , if there is any arror the it should be display on display screen .( where i am using msg subfile)

/******************
PGM PARM(&MLFILE &MLLIB &MLNAME)
DCL VAR(&PGMSGQ) TYPE(*CHAR) LEN(10)
DCL VAR(&MLFILE) TYPE(*CHAR) LEN(10)
DCL VAR(&MLLIB) TYPE(*CHAR) LEN(10)
DCL VAR(&MLNAME) TYPE(*CHAR) LEN(10)
DCL VAR(&MSGID) TYPE(*CHAR) LEN(7)

MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(ERROR))
CHGVAR VAR(&PGMSGQ) VALUE(‘DSPfdc’)
STRSEU SRCFILE(&MLLIB/&MLFILE) SRCMBR(&MLNAME) +
OPTION(5)
GOTO CMDLBL(ENDPGM)
error:

RMVMSG PGMQ(*PRV) CLEAR(*ALL)
RCVMSG MSGID(&MSGID)
SNDPGMMSG MSGID(&MSGID) MSGF(QEDTMSG) TOPGMQ(*prv)

ENDPGM: ENDPGM
*************************/

Thanks

 310 pts.

 

TOPGMQ(*prv)

You’re sending to the program message queue of the entry on the call stack above the CL. Assuming that the CL is compiled as a program, what does the entry above it in the call stack do with messages on its program message queue?

Tom

 108,135 pts.