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



Bryce,

Nope...even with generated signatures, you can't change the order of
the export...in the message David was following as a tutorial,
Barbara's conclusions where

1. Don't use EXPORT(*ALL).
2. You can't change the order of the exports with either style of binder
source, so you might as well use the simple form with the single
list of exports.

Charles

On Wed, Jan 12, 2011 at 11:28 AM, Bryce Martin <BMartin@xxxxxxxxxxxx> wrote:
You are using the PRV and CURRENT  technique.  Your old program that has
not been rebound is looking at the PRV version of binder source so it will
call it just fine.  The issue comes in when you are doing something like
this....

STRPGMEXP PGMLVL(*CURRENT) SIGNATURE('PNS338SP')
 EXPORT SYMBOL(PROC1)
 EXPORT SYMBOL(PROC2)
ENDPGMEXP

and then you change your binder source to this....

STRPGMEXP PGMLVL(*CURRENT) SIGNATURE('PNS338SP')
 EXPORT SYMBOL(PROC1)
 EXPORT SYMBOL(PROC3)
 EXPORT SYMBOL(PROC2)
ENDPGMEXP

Notice that the signature is the same, so the bound programs will be
looking at this new export list and expect PROC2 to be the second symbol.
Then it will fail and call PROC3 instead.  You haven't done anything wrong
yet, that's why its still working properly   :D

Thanks
Bryce Martin
Programmer/Analyst I
570-546-4777



David FOXWELL <David.FOXWELL@xxxxxxxxx>
Sent by: midrange-l-bounces@xxxxxxxxxxxx
01/12/2011 11:06 AM
Please respond to
Midrange Systems Technical Discussion <midrange-l@xxxxxxxxxxxx>


To
Midrange Systems Technical Discussion <midrange-l@xxxxxxxxxxxx>
cc

Subject
RE: CRTSRVPGM






-----Message d'origine-----
De : midrange-l-bounces@xxxxxxxxxxxx
[mailto:midrange-l-bounces@xxxxxxxxxxxx] De la part de

Did you recompile "my program", the one calling P1 and P2?
If you did, then that's why it still called P2 as expected.
If you don't recompile "my program" and change the order of
the exported procedure in the binding language then you would
end up calling P3.


No, I haven't yet recompiled or rebound the programs.

Here's one binder source :

 /* This is junkbndcur */
            STRPGMEXP  PGMLVL( *CURRENT ) SIGNATURE(*GEN)
               EXPORT     SYMBOL( "PROC1"         )
               EXPORT     SYMBOL( "PROC3"         )
               EXPORT     SYMBOL( "PROC2"         )
            ENDPGMEXP

            STRPGMEXP  PGMLVL( *PRV ) SIGNATURE(*GEN)
               EXPORT     SYMBOL( "PROC1"         )
               EXPORT     SYMBOL( "PROC2"         )
            ENDPGMEXP

            STRPGMEXP  PGMLVL( *PRV ) SIGNATURE(*GEN)
               EXPORT     SYMBOL( "PROC1"         )
            ENDPGMEXP

If I look at SRVPGM junkbndcur, I see :
                                Signatures :

00000000000000000000F0E2C70D3D47
000000000000000000000F0E00437647
0000000000000000000000F1C3D6D9D7

In my program junkbndcur, I see :
Programme
de service  Bibliothèque  Activation  Signature
 JUNKSRVCUR   *LIBL        *IMMED      000000000000000000000F0E00437647

So you can see it is using the second version of the service program.
Looking at the binder source, I would expect it to use PROC2 when it
called PROC2, but call PROC3 instead of PROC2 if I recompile junkbndcur.
--
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.



--- This message (including any attachments) is intended only for the use of the individual or entity to which it is addressed and may contain information that is non-public, proprietary, privileged, confidential, and exempt from disclosure under applicable law. If you are not the intended recipient, you are hereby notified that any use, dissemination, distribution, or copying of this communication is strictly prohibited. If you have received this communication in error, please notify us and destroy this message immediately. ---
--
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 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.