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



The right include file I think. You need an ERRNO_H with the die
procedure in it. Here's the prototype:

D die PR 1N
D msg 256A const

And here's the procedure:

** end program with a (user-defined) escape message
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

Send me an email if you want the procedure.

On Wed, Jan 4, 2012 at 11:19 AM, Steinmetz, Paul <PSteinmetz@xxxxxxxxxx> wrote:
Example 4.5 will only compile using IFSEBOOK copy books if I comment out



0082.00  *                  callp     die('open(): ' + %str(strerror(errno)))



What is needed for a successful compile?



CPD5D02    Diagnostic              30   01/04/12  10:58:11.312650  QBNBIND      QSYS        *STMT    QBNBIND     QSYS        *STMT

                                    From module . . . . . . . . :   QBNBSYMR

                                    From procedure  . . . . . . :   QBNBSYMR__UnresolvedReferenceIterator

                                    Statement . . . . . . . . . :   31

                                    To module . . . . . . . . . :   QBNBSYMR

                                    To procedure  . . . . . . . :   QBNBSYMR__SignalUnresolvedReferences

                                    Statement . . . . . . . . . :   8

                                    Message . . . . :   Definition not found for symbol 'DIE'.

                                    Cause . . . . . :   No definition was found for reference DIE in *MODULE

                                      object NBAPGM01TT in library QTEMP. The definition either does not exist or

                                      is not of the same data or procedure type as the reference. Recovery  . . .

                                      :   Try the Create Program (CRTPGM) command again, supplying an object that

                                      contains a definition for symbol DIE.



Thanks


Paul Steinmetz
AS/400 Operations Analyst
Pencor Services, Inc.
471 Delaware Ave
Palmerton Pa 18071
610-826-9117 work
610-826-9188 fax
610-920-1658 pager
610-349-0913 cell
610-377-6012 home
psteinmetz@xxxxxxxxxx<mailto:psteinmetz@xxxxxxxxxx>
http://www.pencor.com/

--
This is the RPG programming on the IBM i / System i (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
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.