|
Thanks Scott and Al for your responses.
Before I came to my current shop, ILE was implemented half-heartedly - and
as a result we have a few monolithic ILE programs because those who
preceded me didn't do their homework. Some of the staff continue to think
they can write RPG as if it were RPG on a S38, and the maintenance of
these programs is (as you'd expect) quite challenging.
I'm trying to get the staff to recognize that just because we use CALLB,
CALLP, functions and CALLPRC we aren't truly utilizing ILE as intended if
we aren't being as modular/granular as possible (and other things). As a
result I'm in the process of establishing some best practices, standards,
new design testing and cleaning up and making our code base more
manageable and efficient.
So for analytical reasons I want to be able to look at a *MODULE object
and see where it is being used so I can see what objects are candidates
for re-engineering. The PDM option 25 is very cumbersome and that's why
I'm looking for a more efficient method of identification. My mantra to
my staff is that we don't need to get there tomorrow, but we do need to
get there eventually.
"However, I would recommend that you never bind the same module to more
than one program -- which makes this type of thing a non-issue."
I am curious as to why you say that Scott? In our case though this is
exactly what was done - rpg modules were created to perform edits, and/or
display panels for data entry and/or return values via export/import parms
and we have extensive use of prompt windows and processing panels that are
executed via callb - and it seems to have worked pretty well. Wouldn't
this (reuse of modules) be similar to say a service program being accessed
by more than one program?
The only problem (and I know this is why you and your peers recommend
avoiding this) is that when a modification is required to the module then
all the programs using it need to be recompiled (and I know that these
should be in a service program and accessed via prototyped calls). But we
can't just convert everything to service programs overnight for practical
reasons, so I'm left with trying to deal with the existing code.
"Even if you searched for all CALLB and all prototypes, you'd only have
found the RPG code. Now you'd have to also search for CALLPRC in CL, as
well as C/C++ prototypes, Cobol calls (sorry, I don't know the Cobol
syntax). "
Exactly - additional PDM option 25 runs. Hence my request for a better
method of finding what objects are used where.
Again, thanks for the replies!
Regards, Jerry
Gerald Kern - MIS Project Leader
Lotus Notes/Domino Administrator
IBM Certified RPG IV Developer
The Toledo Clinic, Inc.
4235 Secor Road
Toledo, OH 43623-4299
Phone 419-479-5535
gkern@xxxxxxxxxxxxxxxx
This e-mail message, including any attachments, is for the sole use of the
intended recipient(s) and may contain confidential and privileged
information. Any unauthorized use, disclosure or distribution is
prohibited. If you are not the intended recipient, please inform the
sender by reply e-mail and destroy this and all copies of this message.
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/midrange-l.
As an Amazon Associate we earn from qualifying purchases.
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.