|
Hi Steve,
> would you ever user lvlchk(*no) on your database files? You can if
> all you ever do is add new fields to the end of the record format.
> Using lvlchk(*no) is the same as hardcoding the signature. The
> alternative is to have the system assign a new signature and recreate
> all the programs that use the srvpgm. Same as recompiling all the
> programs that use the database file.
My original suggestion for you to use hard coded signatures was based on
my mistaken assumption that you simply didn't like the signature
violation concept. Hard code the sig, no violation :-) Having said
that, lvlchk(*no) is not the same as a hard coded signature because we
have the ability to make an intelligent signature, viz:
strpgmexp pgmlvl(*current) signature('01.00 20070404')
With this mechanism I can clearly define which version of the exports
are bound to a program.
>
> and you trust all your programmers, consultants, managers - whomever
> is able to add a new procedure to a srvpgm - to always add new exports
> to the end of the binding source? There is no system support for
> enforcing this rule. Yet if it is not followed all your applications
> could crash when the revised srvpgm is promoted to production.
Yes. If I did not trust that a programmer was capable of adding an
export to the end of binder language source, why on earth would I trust
him to be able to do anything at all? I understand your point about
dynamic procedure loading, and that's actually possible:
http://archive.midrange.com/rpg400-l/200306/msg00462.html
May I inquire if this is an actual problem you have encountered in your
travels? I personally have not run into an RPG programmer who couldn't
get this right, but not everyone is exposed to the same circumstances...
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.