Your example below does not violate my suggestion, of binding a given *MODULE into one place (a single *PGM or *SRVPGM). I said nothing about any given *PGM or *SRVPGM being composed of one or more *MODULEs. =-O

Let;s say your CLLE *MODULE is named CLLE1, and your RPGLE *MODULE is named RPGLE1 ... what I am saying is that you should almost never "bind by copy" either one of those two modules into more than one *PGM or *SRVPGM. I did not say that you should avoid binding both of them together into a single *PGM or *SRVPGM.

The issue I was speaking to is "maintenance" -- if you bind the same *MODULE into many *PGMs and/or multiple *SRVPGMs, then any time you have to "fix" code in that *MODULE, you must "hunt down" every place it is bound into, and replace it, either using UPDPGM or UPDSRVPGM, or using CRTPGM or CRTSRVPGM to recreate from all of the component *MODULEs (assuming you keep them around.)

Hope that helps,

Mark S. Waterbury

> On 2/7/2013 10:50 AM, Vernon Hamberg wrote:
I've heard this recommendation a couple times in these threads. It seems
to go against one of the principle "benefits" of ILE - that one can
combine modules in different languages.

One question is, how much benefit IS that? I find at least one situation
to be beneficial, as described here -

We often have a front-end CL that sets up the environment, then calls an
RPG program to do the work.

I think it's a good idea to change the call to a CALLPRC, make the RPG
into a module, same with the CL, and link the 2 together - one program
object instead of two, for what it's worth.

Now that adds its own complexity to things, in my experience. Here is
where a change management app is helpful.

To add to the idea, the RPG module can have multiple procedures, and the
CL can call them as needed - instead of calling several separate
programs, again reducing the number of program objects.

Just an idea - that a CL driver program can make calls into a linked
module instead of separate programs.


On 2/7/2013 9:36 AM, Mark S Waterbury wrote:

Maintenance will be easier if you avoid binding *MODULEs into more than
one place (one *PGM or one *SRVPGM only).


Return to Archive home page | Return to MIDRANGE.COM home page