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