Page 1 of 2

Correct cobol program not being picked up

PostPosted: Sat Dec 21, 2013 1:12 am
by Shreya190
Hi,

I have a proc that calls DFSRRC00 and parameters passed are DLI, program name and PSB name. Series of Cobol programs are called one after the other.
I had made changes to one of the COBOL sub programs through changeman and promoted it. Copied the changed program from my promotion library to the steplib that is given to the proc. But still, the old subprogram is referred. My updated subprogram never gets picked up.

Please guide me on what mistake I am making? Is the preloaded subprogram being picked up, if yes how to make my program to be used

Re: Correct cobol program not being picked up

PostPosted: Sat Dec 21, 2013 2:19 pm
by NicC
please do not multi-post. The other topic in the COBOL section has been deleted.

Is this a batch or on-line program? Have you checked every library in the JOBLIB/STEPLIB concatenation to ensure that your program is ONLY in the one library?

Re: Correct cobol program not being picked up

PostPosted: Sat Dec 21, 2013 10:31 pm
by Shreya190
It is a batch program and yes it is in only one library.

Re: Correct cobol program not being picked up

PostPosted: Sun Dec 22, 2013 7:23 am
by dick scherrer
Hello and welcome to the forum,

It is a batch program and yes it is in only one library.
One thought is there is a typo in the module name.
Another is that the compile/link was not successful.

Suggest you post the execution jcl from the problem run and the jcl of the compile/link.

Which libraries are "automatically" searched on your system?

Re: Correct cobol program not being picked up

PostPosted: Sun Dec 22, 2013 8:02 am
by Shreya190
there is no typo in the module name, compile link was done through changeman using parameter DYN. the subprogram was in active state, after which i promoted it to promotion library.

This subprogram is called by another subprogram. The subprogram passed as parameter to DFSRRC00 calls another subprogram, then the other is called and eventually after 4-5 programs this subprogram is being called. Hope I dont have to compile all these subprograms.

How do I find the libraries that are automatically searched?

Re: Correct cobol program not being picked up

PostPosted: Sun Dec 22, 2013 8:42 am
by dick scherrer
Hello,
How do I find the libraries that are automatically searched?
Suggest speaking with your system support people.

Is it possible that somewhere along the line, something was static instead of dynamic?

You might also talk with your changeman support to see if they see something we cannot from here at the forum.

Re: Correct cobol program not being picked up

PostPosted: Mon Dec 23, 2013 8:55 pm
by Ed Goodman
I'd bet the original subprogram was statically linked to the main program. It's going to find that version first, no matter what you do.

Make SURE the main program is not pulling it in during link/edit.

Re: Correct cobol program not being picked up

PostPosted: Mon Dec 23, 2013 11:23 pm
by Shreya190
Hi, Thanks for reply.

Can you please tell me how to check if the main program is pulling it in during link/edit?

A is the original program that is passed as parameter to DFSRRC00. This program does not exist in Changeman, even in loadlib where it is present, it is in binary format.

B program is the root module of this entire step, it is the 1st one to appear in sysout. I have added a comment in B through changeman and then compiled and promoted it. Then copied B from promotion library to loadlib which is passed as steplib. I see this modified B never gets picked up. It is always the older one that is picked up.

Re: Correct cobol program not being picked up

PostPosted: Tue Dec 24, 2013 12:28 am
by dick scherrer
Hello,

Link edit B program and see if it is resolved.

If it is not in changeman, how did a binary get created?

How do yuou pass program A to DFSRRC00 if it does not exist?

Re: Correct cobol program not being picked up

PostPosted: Tue Dec 24, 2013 12:38 am
by Shreya190
Program B was already link edited, it did not resolve the issue.

Changeman was recently set up for our application, A already existed in the loadlib. It gets picked up from the loadlib.

i am not sure why A is not there in changeman, but is gets rightly picked up and calls subsequent modules. The code runs absolutely fine everyday.