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



This is a multipart message in MIME format.
--
[ Picked text/plain from multipart/alternative ]
John,

Suppose you have a program, named MYPGM1, which currently has the
following:
     D MyVar1          s              1a
     D MyVar2          s              1a
     C     *ENTRY        PLIST
     C                   PARM                    MyVar1
     C                   PARM                    MyVar2

You put this into your callee program, MYPGM1
     D MYPGM1          PR                  extpgm('MYPGM1')
     D  MyVar1                        1a
     D  MyVar2                        1a
     D MYPGM1          PI
     D  MyVar1                        1a
     D  MyVar2                        1a

And you put this into your calling program
     D MYPGM1          PR                  extpgm('MYPGM1')
     D  MyVar1                        1a
     D  MyVar2                        1a
     C                   callp     mypgm1(X:Y)
One of the benefits of using a prototype instead of *ENTRY is that now you
can change things on the PR and PI like CONST, so that you can do
     C                   callp     mypgm1('X':'Y')


Now that I made it simple, let's pretty it up
Put this into mylib/QPROTOSRC,MYPGM1
     D MYPGM1          PR                  extpgm('MYPGM1')
     D  MyVar1                        1a
     D  MyVar2                        1a
You put this into your callee program, MYPGM1
      /INCLUDE MYLIB/QPROTOSRC,MYPGM1
     D MYPGM1          PI
     D  MyVar1                        1a
     D  MyVar2                        1a

And you put this into your calling program
      /INCLUDE MYLIB/QPROTOSRC,MYPGM1
     C                   callp     mypgm1(X:Y)

Rob Berendt
--
"They that can give up essential liberty to obtain a little temporary
safety deserve neither liberty nor safety."
Benjamin Franklin




JMBauman@wardtrucking.com
Sent by: rpg400-l-admin@midrange.com
04/04/2002 01:56 PM
Please respond to rpg400-l


        To:     rpg400-l@midrange.com
        cc:
        Fax to:
        Subject:        Calling Program with a Procedure Interface



OK, I am thoroughly confused now.  What I want to do is perform a call
from
one program to another.  I don't want to define a procedure.  I  thought
in
RPG IV we are supposed to use the 'PI' to replace the *ENTRY PLIST.  Can
someone make this easy for me? (Ha)

Thanks
John M. Bauman

_______________________________________________
This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list
To post a message email: RPG400-L@midrange.com
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/cgi-bin/listinfo/rpg400-l
or email: RPG400-L-request@midrange.com
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 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.