× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



I'm either having a brain f*** today or forgetting something fundamental I think.

I'm passing a qualified DS as a parm to a service program. The service program populates this DS with up to 20 errors and returns.

I have stepped through the service program and confirmed it fills the DS properly, but when I get back to the calling program, the DS is blank. I do not have CONST or VALUE on the parm. It is the only parm that is changed in the service program.

"em" is the parm in question.

Prototype (copy member copied into both service program and caller) and procedure interface for the service program:

D EdtSngFlds PR
D cItemDS LikeDS(ItmMstDS)
D wItemDS LikeDS(ItmMstDS)
D em LikeDS(ErrMsgDS)
D PrtFrm 1A Const
D ReqAct 1A Const
D EffImm 1A Const
D PCNbr 2S 0 Const

P EdtSngFlds B Export
D EdtSngFlds PI
D cItemDS LikeDS(ItmMstDS)
D wItemDS LikeDS(ItmMstDS)
D em LikeDS(ErrMsgDS)
D PrtFrm 1A Const
D ReqAct 1A Const
D EffImm 1A Const
D PCNbr 2S 0 Const

Prototype and procedure interface to the calling program (note that "em" is a parm _into_ the calling program as well):

D IM01 PR ExtPgm('IM01')
D ITNBR 6A
D em LikeDS(ErrMsgDS)

D IM01_Init PR
D IM01_Unload PR

D IM01 PI
D pITNBR 6A
D em LikeDS(

Here's the definition of ErrMsgDS (copy member also copied into both service program and caller):

D @ErrMaxNbr C 20
D ErrMsgDS DS Qualified D ErrMsgID 7A Dim(@ErrMaxNbr) D ErrMsgTxt 75A Dim(@ErrMaxNbr)

Does it have anything to do with "em" being a parm _into_ the caller?

Thanks.


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:

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.