I use following JCL for compiling COBOL Programs involving no Calls. In the below JCL, i am compiling program DISPLAY1. Now I have written 2 COBOL programs wherein STATCC program is calling SUBPGM in static mode. Can someone please help me where and what changes i need to make in the following JCL to compile the above 2 Static Programs. Also what change i need to make in following Compile JCL if STATCC program is calling SUBPGM in dynamic mode
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
Hello,
You need to talk with your system support people.
There is standard compile/link jcl for your system and this with the compiler options used at your site should be used. As these are site-specific, you should get this info locally.
You should not change the standard compile/link jcl.
One easy way to switch between a static and a dynamic call is to use a literal in the call (static) or use a working-storage variable in the call (dynamic).
Joined: 22 Apr 2006 Posts: 6250 Location: Mumbai, India
Hi,
This is definetly a shop-specific question but I wonder why many of the shops still use such JCLs while we are available with version control tools (Change man, Endevour..) in market, complilation of program is just a matter of hitting couple of PF3 & Enter key - who is worried about whether it's a Dynamic or static CALL, it's just a COBOL program.Full Stop.
Pardon my ignorance - Are these tools such expensive ?
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
Hi Anuj,
Most of my client sites do not use purchased version control tools for all of their applications yet. Some use nothing purchased at all because they have had version control for longer than the current products became standard (i've actually helped write a few many, many years ago). Lots of places recognized the need and dealt with it in the early 80's. Some are in transition from the "own code" to the currently available products. Already some of my places are looking into multi-platform tools so they can have common Configuration/Change Management group.
Quote:
who is worried about whether it's a Dynamic or static CALL, it's just a COBOL program.Full Stop
Different sites have different standards. There may be much concern whether code is called statically or dynamically. Static calls may cause "old" versions of a called module to be executed rather than the current version. Some places count on this. . . Dangerous (imho), but used more than just a few places.
The more sites/systems one deals with, the more one just shakes one's head at what are "the rules" there
Another interesting phenomenon is that when people start new with some organization (fresher) and stay there for years, they mistakenly "come to know"/understand that how that environment is managed is what it is like everywhere else. They often get quite a shock when they change organizations and find the system at the new organization is not like the one they have used. Surprise
I agree that this is the site specific question. Thats why i have given the Compile JCL that i use to compile simple programs involving calls. As far as i know i need to add some DD statement which link the called program to the main program and i think that should not be site specific.
If anyone of you have the similar compile jcl like this which do compile the static called programs, i will try to modify my jlc as per that
Pardon my ignorance - Are these tools such expensive ?
SCLM is part of ISPF,
without getting into unpleasant comparisons,
with a good planning and setup it performs quite well
( I implemented it for fairly complex projects )
it does not have some of the facilities and frills of other products,
( going back and forth from new/old )
but for control, lock, build,promote, with multi CPU sharing of the control datasets
it shows a very good behavior and robustness
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
Hello,
Quote:
As far as i know i need to add some DD statement which link the called program to the main program
You should need no additonal jcl to link called programs.
The same standard compile jcl may be used to compile both static or dynamic called modules. My people do this all the time with common compile jcl.
What has happened to cause you believe you need to change your jcl?
If some of what you've tried caused some error(s), it would be a good thing to post the error(s) including any error message ids. Post the complete message rather than selecting pieces to post.