On the basis of the information provided, below, IMO, the only *SAFE*
way to make this change is to recompile the entire application. Perhaps
if you provided some additional  info about BA4C1426, I might have some
additional alternatives.

Since you have go through the pain of a mass compile, I would make
BA4C1426 a stand-alone module and dynamically call it. I understand that
this might take some additional time to recoded for dynamic calls.

As to the original request:
1)      Compile BA4C1976 into a stand-alone csect and link into the
"special" loadlib of your choice
2)      Execute the following for each LOAD module currently existing
        //STEP1 exec pgm=hewl,parm=.......
        //SYSPRINT  DD SYSOUT=*
        //SYSLMOD  DD DSN=(new loadmod library)
        //SYSLIB1     DD DSN=(original loadmod library)
        //SYSLIB       DD DSN=( "special" loadmod library)
        //SYSIN         DD *
         Include syslib(BA4C1426)
         Include syslib1(original loadmod name)
             Name "original loadmod name(r)"


HTH,

<snip>
We have 1000's of CICS COBOL programs that COPY in a COBOL source
program called BA4C1426 and then statically call it.  I have given some
code examples of how this works below.   In this example, COBOL program
BA4C1976 does a COPY to bring in the COBOL source of BA4C1426 at compile
time and then statically calls BA4C1426.

Our application team would like to change just the BA4C1426 code and
then relink the change into the existing modules.  So for the example
below, BA4C1976 would not be recompiled, but the binder step would be
run to update the existing BA4C1976 load module with a new CSECT for
BA4C1426.

Would anyone have some examples of existing JCL of how to do the relink
step of swapping in a new CSECT into an existing load module?

I was going to research it, but was thinking someone on this list has
already done it and would have an example already available.  I didn't
find any examples quickly with google searches.


Here is an example of how a module like BA4C1976 references BA4C1426:

             Identification Division.
            * Object-Class PrsnDBPmtInstRef.
             Program-Id. BA4C1976.

.
.
.
             Procedure Division using Self
                                      Client-Variables
                                      Global-Variables
                                      Arglist.
.
.
.                 Call 'BA4C1426'
                 Using DfhEiBlk DfhCommArea
                       TV-023-PRSNDBPMTINSTRSLT-LS
                       Client-Variables
                       Global-Variables
                       ParmList
.
.
.
                 COPY BA4C1426.

             End Program BA4C1976.


The BA4C1426 source that is referenced by the "COPY BA4C1426" line is a
COBOL program:

             Identification Division.
            * Object-Class PARNLIST.
             Program-Id. BA4C1426.
.
.
.
COBOL source
.
.
.
            End Program BA4C1426.

</snip>

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to