×
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.
Hello, David:
This is no different than how it has always been, with CLP and RPG/400,
etc. -- for example, when you code (in CL):
CALL PGM(XXX210)
the compiler will compile this, but XXX210 does not need to exist (at
compile time).
How could this be done any other way? Otherwise, you would constantly be
running into a version of "the chicken and the egg" problem, where you
cannot create program A because program B does not exist yet, or vice versa.
Also, you would have to ensure that you always have the correct library
list at compile-time, in order for the compiler to verify the existence
of an unqualified program name.
Just because this happens to be prototyped, in an ILE language (RPG IV),
how is that _any_ different?
In fact, the same thing is true when you prototype a call to an external
procedure in some other *MODULE or *SRVPGM -- at compile time, that
*MODULE or *SRVPGM does not even have to exist. You can always do the
CRTRPGMOD (or CRTCMOD, etc.) -- it is only at "bind time", when you
attempt to bind your new *MODULE, that you will get errors if the other
*MODULEs or *SRVPGMs are not found or do not exist.
Perhaps you are confused because you are using CRTBNDRPG with a BNDDIR
specified in the H-spec? In effect, this single command is actually
performing two steps for you -- CRTRPGMOD followed by CRTPGM ... so it
seems to be checking for the existence of the other modules or service
programs at "compile time" -- but in reality, this is happening "at bind
time" (the embedded CRTPGM command).
Does that explanation help?
All the best,
Mark S. Waterbury
> David FOXWELL wrote:
Hi,
I just opened up a source member that I need to modify and found this.
D Prc PR EXTPGM ( 'XXX210' )
D Parm1 etc
D Parm2 etc
D Prc PI
D Parm1 etc
D Parm2 etc
Just realised I don't fully understand EXTPGM as XXX210 is obviously an error. The source, module and program are all named XXX110.
Would somebody care to enlighten me?
Thanks.
As an Amazon Associate we earn from qualifying purchases.