Hi, Bob (and David):

I should also mention that you might want to look into using a tool such as Alan Campin's excellent COMPILE tool, available here:


(You need to scroll down most of this page to find the COMPILE tool.)

The COMPILE tool allows you to store and maintain the "compile and build" instructions, as comments, right in the source code. Then, instead of using option 14=Compile in PDM, you create a user-defined option, such as "CR" for "create" and that invokes the COMPILE command, which scans the source code looking for the special comments with the "build" instructions. This also works very nicely with WDSCi and RDi, etc.

The "big idea" here is, you then have only one place where you ever need to maintain this information, such as what *MODULEs need to be listed on the CRTPGM command, and that is right there in the source code for the program, whether OPM or ILE, C, CL, COBOL, or RPG.

I still suggest that you probably want to create one or more binding directories for your service programs, so that they can be specified via the BNDDIR parameter on the H-spec or on the "embedded" create commands (if using a tool like Alan Campin's COMPILE command).

I hope that helps?


Mark S. Waterbury

> Bob P. Roche wrote:
How does having to remember to name all modules, every time you recompile simplify things? If it is in the binding directory, and you have that listed in your H spec. It seems simpler to me. The compiler will just find it.

"Mark S. Waterbury" <mark.s.waterbury@xxxxxxx>
RPG programming on the AS400 / iSeries <rpg400-l@xxxxxxxxxxxx>
08/07/2008 09:47 AM
Re: Question about service programs

I suggest that a *MODULE should only ever be bound in one place, either in a single ILE bound *PGM, or in a single *SRVPGM, where it can then be "shared" and accessed by as many other ILE *PGMs as needed/desired.

So, then, you would never add any *MODULEs to any binding directories. You would only name that *MODULE on the one CRTPGM or CRTSRVPGM command, initially.

This approach greatly simplifies maintenance (when that *MODULE eventually gets changed).


Mark S. Waterbury

> Kevin Bucknum wrote:
That makes sense. Everything in our BNDDIR's are service programs which
is why I was thinking it would be unusual for them to copy.

-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Bruce Vining
Sent: Thursday, August 07, 2008 7:49 AM
To: RPG programming on the AS400 / iSeries
Subject: RE: Question about service programs

*MODULEs are bound by copy, *SRVPGMs are bound by reference.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2020 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].