Hey Brian,

We did it manually- so each “breaking” version got its own version
signature- and it worked fine. The problem occurred when you have hundreds
of versions- and trying to keep track of each.. with hundreds of exports..
the binder source exploded..

So we went to a more pragmatic solution: only adding exports to the end -
and if implementation is challenged- add that to the end and don’t touch
the original so any client code will work in touched.

.. but that is a convention, and conventions can easy be broken.

That made me implement the dynamic procedure load and we use that in all
our products and projects

You can find “the magic” in both noxDb and ILEastic and in our IceBreak.



lør. 21. mar. 2026 kl. 13.18 skrev Brian Parkins <goodprophet.bp@xxxxxxxxx>:

Neils, did this nightmare arise from system-generated Signatures - or
from user-defined Signatures? (I would have thought the latter provides
both flexibility and control - but please correct me.)

I assume you define one, fixed Signature now? So how do you manage
version control?

Interesting.

Brian.

On 21/03/2026 11:28, Niels Liisberg wrote:
.. but service program signatures quickly becomes a nightmare for version
control.. yes you can … but.. first you had one problem with control the
version .. now for each signature you have yet an issue..

Been there - done that.. never again…

lør. 21. mar. 2026 kl. 18.21 skrev Brian Parkins <
goodprophet.bp@xxxxxxxxx>:

Even under these circumstances a *SRVPGM <may> provide a solution.

Multiple versions of the same procedure can co-exist in a single
*SRVPGM, (provided the names are unique). The flexibility of Signatures
and the Export Symbol Table.

100% agree that *SRVPGMs are the better option; /COPY and /INCLUDE
should - in the main - be used only for Prototype inclusion, (with /IF,
/DEFINE, etc. as required).

Brian.

On 21/03/2026 05:22, Niels Liisberg wrote:
The is some exceptions: versioning - where different clients need
different
versions at a certain point in time.
--
This is the RPG programming on IBM i (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription
related
questions.



--
This is the RPG programming on IBM i (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription related
questions.



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

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

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