× 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.



Cyndi,

You've got
return SPMReturn

Which means the procedure is trying to return a value yet your PI (and
PI?) don't show that return value...

I don't know what the definition of SPMReturn is, but lets say it's
10a, then your PI (and PR) should be:
D die PI 10A
D peMsg 256A const

or you can remove the SPMReturn from the return statement since it's
obviously not being used. (The PR would have to already have the
above change and I know a PR/PI mismatch won't compile)

Note this would not have compiled at any release AFAIK...or at least
there should have been a warning...perhaps somebody changed your error
defaults on the old release so that it would compile?

I don't know where you got this code, Scott's got more than one
project with a "die" I beleieve...but I'd be willing to bet it's been
altered from Scott's original. He would not have done this. :)

One of the ones I have has a die like so:
P die B
D die PI 1N
D msg 256A const

D QMHSNDPM PR ExtPgm('QMHSNDPM')
D MessageID 7A Const
D QualMsgF 20A Const
D MsgData 256A Const
D MsgDtaLen 10I 0 Const
D MsgType 10A Const
D CallStkEnt 10A Const
D CallStkCnt 10I 0 Const
D MessageKey 4A
D ErrorCode 1A

D dsEC DS
D dsECBytesP 1 4I 0 inz(%size(dsEC))
D dsECBytesA 5 8I 0 inz(0)
D dsECMsgID 9 15
D dsECReserv 16 16
D dsECMsgDta 17 256

D MsgLen S 10I 0
D TheKey S 4A

c ' ' checkr msg MsgLen
c if MsgLen<1
c return *off
c endif

c callp QMHSNDPM('CPF9897': 'QCPFMSG *LIBL':
c Msg: MsgLen: '*ESCAPE':
c '*': 3: TheKey: dsEC)

c return *off
P E


HTH,
Charles

On Wed, Jul 25, 2012 at 8:45 AM, Cyndi Bradberry <CyndiB@xxxxxxxx> wrote:
Scott,

We use your socket programming to communicate between our iSeries and our web server running on IIS. This past weekend we upgraded from V6 to V7. Last night, I needed to recompile one of our socket programs and received an error on that I don't understand. These all worked fine on V6, but on V7 apparently you must have a return parameter according to the IBM manual. The person who understood all this has left the company and I need help. I included the code below, if you can give me an assistance, I would be grateful.

*RNF3763 20 1 A return value is expected for the procedure-interface
specification.
*RNF5413 30 2 An operand must be specified for a procedure that returns a
value.
*RNF5415 30 1 The procedure returns a value, but no RETURN operation was
found.



338800 P die B
338900 D die PI
======> aaa aaaaaaa
*RNF3763 20 a 338900 A return value is expected for the procedure-interface
specification.


*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
P die B
D die PI
D peMsg 256A const

D SndPgmMsg PR ExtPgm('QMHSNDPM')
D MessageID 7A Const
D QualMsgF 20A Const
D MsgData 256A Const
D MsgDtaLen 10I 0 Const
D MsgType 10A Const
D CallStkEnt 10A Const
D CallStkCnt 10I 0 Const
D MessageKey 4A
D ErrorCode 32766A options(*varsize)

D dsEC DS
D dsECBytesP 1 4I 0 INZ(256)
D dsECBytesA 5 8I 0 INZ(0)
D dsECMsgID 9 15
D dsECReserv 16 16
D dsECMsgDta 17 256

D wwMsgLen S 10I 0
D wwTheKey S 4A

c eval wwMsgLen = %len(%trimr(peMsg))
c if wwMsgLen<1
c return
c endif

c callp SndPgmMsg('CPF9897': 'QCPFMSG *LIBL':
c peMsg: wwMsgLen: '*ESCAPE':
c '*PGMBDY': 1: wwTheKey: dsEC)

c return SPMReturn
P E


Cyndi B.
Boise, ID
--
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 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.