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



Hi, Rob:

Exactly.

There are a few other "gotchas" with modifying command defaults on OS/400 and IBM i systems.

* if you change the defaults on any IBM commands (in QSYS),
pre-compiled CL programs that have worked "fine" for many years can
suddenly stop working or produce unexpected results. This is
because even though the CL programs (OPM CLP or ILE CLLE) are
"compiled" they contain a copy of only the parameters you supplied in source, and any other parameters will obtain their then-current
default values from the current *CMD object in QSYS (or whatever
library it finds it in, in the *LIBL). This often causes big
surprises to newcomers to the platform, as it is unlike almost any other "compiler" on this or any other platform.

* to work around this, I usually prompt all CL commands in the
CL source and "fill in the blanks" to supply the default values
for ALL keyword parameters, so that way, they are "locked in" as
the were, when I edited the source, and they get included into
the compiled code. This makes these CL programs "immune" to
future changes to command defaults, whether done by the shop,
on-site, or by IBM, e.g. via PTF or during an OS upgrade.

* this is also why I recommend or advise to create a "custom
library" called "QSYS1" or some such, that is added to QSYSLIBL
ahead of QSYS, and then, for any commands you want to "customize" you do a CRTDUPOBJ of the original *CMD from QSYS, or where ever
the "proxy" points to, into e.g. QSYS1, and then change the
defaults on that copy of the command.

* an added benefit of this approach is, you can always prompt e.g.
"QSYS/CRTBNDRPG" to see the IBM-supplied defaults, and you can
also code "QSYS/commandname in any CL program where you want
to ensure you are using the IBM-supplied defaults. (but the
same "caveat" about including all default values in the source
still applies).
* normal users of the "unqualified" command will get the
locally-modified version in QSYS1

Hope this helps,

Mark S. Waterbury




> On 2/22/2017 11:44 AM, Rob Berendt wrote:
Yes I am fully aware of the proxy command chain. In the IFS, or Linux
world, we would call this a "symbolic link".

However, that is something to be aware of in case someone thinks that if
they run QDEVTOOLS/CRTBNDRPG they are running the unadulterated version.


Rob Berendt



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

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.