Portal | Manuals | References | Downloads | Info | Programs | JCLs | Master the Mainframes
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Usergroups Profile Log in to check your private messages Log in
 

 

Cobol DB2 program in PGM= parameter

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> DB2
View previous topic :: :: View next topic  
Author Message
paramoberoi

New User


Joined: 26 Oct 2010
Posts: 12
Location: USA

PostPosted: Fri Jun 24, 2011 2:02 pm    Post subject: Cobol DB2 program in PGM= parameter
Reply with quote

Hello

In order to execute cobol-db2 batch programs I ve always used IKJEFT01/1A/1B TSO/E programs.

In my new shop I noticed a JCL that executes cobol-db2 program by giving program name directly in PGM= parameter. It has a DD statement by name DSNPARMS having DISP=(MOD,DELETE,DELETE) so i cannot view it. This DDname is not used anywhere in program.

Suspecting that it may use CAF or RRASF to connect to DB2 i checked listing for precompiler option and found ATTACH(TSO) and DB2 VERSION 8 REL. 1.0. Besides it has no special processing in prog to connect to DB2.

Can you help me explain how is the DB2 prog being executed without using IKJEFT01 . Thanks.
Back to top
View user's profile Send private message

Dsingh29

Active User


Joined: 16 Dec 2008
Posts: 132
Location: IBM

PostPosted: Fri Jun 24, 2011 3:17 pm    Post subject:
Reply with quote

Did you checked the compilation process?
Back to top
View user's profile Send private message
Dsingh29

Active User


Joined: 16 Dec 2008
Posts: 132
Location: IBM

PostPosted: Fri Jun 24, 2011 3:29 pm    Post subject:
Reply with quote

Follow up.

Look for the STEPLIB or JOBLIB in the jcl, these would contain the load modules of the programs to be loaded.
Back to top
View user's profile Send private message
paramoberoi

New User


Joined: 26 Oct 2010
Posts: 12
Location: USA

PostPosted: Fri Jun 24, 2011 3:35 pm    Post subject:
Reply with quote

Its precompiled by DSNHPC. Compiled by IGYCRCTL. Linked by HEWL. Apart from these there are some Changeman (Configuration management tool) specific steps in compile JCL.

Is there anything specific you want me to check?
Back to top
View user's profile Send private message
paramoberoi

New User


Joined: 26 Oct 2010
Posts: 12
Location: USA

PostPosted: Fri Jun 24, 2011 3:49 pm    Post subject:
Reply with quote

I have following libraries concatenated in steplib of precompiling step

prefix.EXIT
prefix.DSNLOAD

prefix.EXIT contains following components
DSNHDECP
DSNHMCID
DSNTWR
DSN2PARM
DSN3@ATH
DSN3@SGN
DSN8EAE1
Back to top
View user's profile Send private message
Dsingh29

Active User


Joined: 16 Dec 2008
Posts: 132
Location: IBM

PostPosted: Fri Jun 24, 2011 3:50 pm    Post subject:
Reply with quote

There is no way a cobol-db2 is going to run without IKJEFT01. These are two different methods of providing program name to jcl.

1. when PGM=IKJEFT01, we provide program name via some parmlib
2. program name can also be given straight in PGM=program1. This doesnot mean that its running without IKJEFT01 .
Back to top
View user's profile Send private message
paramoberoi

New User


Joined: 26 Oct 2010
Posts: 12
Location: USA

PostPosted: Fri Jun 24, 2011 4:00 pm    Post subject:
Reply with quote

[quote]
2. program name can also be given straight in PGM=program1. This doesnot mean that its running without IKJEFT01 .

How does IKJEFT01 comes ito picture if we give progname in PGM= parameter ?
Back to top
View user's profile Send private message
Dsingh29

Active User


Joined: 16 Dec 2008
Posts: 132
Location: IBM

PostPosted: Fri Jun 24, 2011 4:10 pm    Post subject:
Reply with quote

That might be used in your site specific (changeman) compilation.
Back to top
View user's profile Send private message
don.leahy

Active Member


Joined: 06 Jul 2010
Posts: 641
Location: Whitby, ON, Canada

PostPosted: Fri Jun 24, 2011 6:04 pm    Post subject:
Reply with quote

Is the program statically linked? If so then look at the link input and figure out where DSNHLI is resolved from.

If not, then look at the STEPLIB concatenation for the job.

DSNHLI is set up as an ALIAS for one of the attachment facilities. A precompiler-generated call to DSNHLI will resolve to the attachment facility that is to be used.

Another possibility is that you are using Smart/Restart or other product that manages the connection for you.
Back to top
View user's profile Send private message
dick scherrer

Site Director


Joined: 23 Nov 2006
Posts: 19270
Location: Inside the Matrix

PostPosted: Fri Jun 24, 2011 7:56 pm    Post subject:
Reply with quote

Hello,

Quote:
There is no way a cobol-db2 is going to run without IKJEFT01.
Uh . . . Sure there is . . . You may not have used this but it has been around for quite a long time.

Quote:
Call Attach Facility is used for application programs that run under batch to establish a connection with db2.It is an alternative to DSN command processor and provides
Back to top
View user's profile Send private message
Anuj Dhawan

Senior Member


Joined: 22 Apr 2006
Posts: 6258
Location: Mumbai, India

PostPosted: Fri Jun 24, 2011 8:01 pm    Post subject:
Reply with quote

This one might help: http://ibmmainframes.com/post-72291.html
Back to top
View user's profile Send private message
enrico-sorichetti

Global Moderator


Joined: 14 Mar 2007
Posts: 10202
Location: italy

PostPosted: Fri Jun 24, 2011 8:57 pm    Post subject: Reply to: Cobol DB2 program in PGM= parameter
Reply with quote

Quote:
There is no way a cobol-db2 is going to run without IKJEFT01. These are two different methods of providing program name to jcl.

2. program name can also be given straight in PGM=program1. This doesnot mean that its running without IKJEFT01 .


both assertions are wrong

stop providing wrong informations, read the manuals or get proper training icon_evil.gif

did You ever hear about CAF for example ???
btdtgtts
Back to top
View user's profile Send private message
paramoberoi

New User


Joined: 26 Oct 2010
Posts: 12
Location: USA

PostPosted: Mon Jun 27, 2011 3:42 pm    Post subject:
Reply with quote

Hello Don Leahy

Thanks for the guidance.

I checked that the program DSNHLI is dynamically linked as the compiler option is DYNAM. I saw that in the JCL an additional library is concatenated before prefix.EXIT and prefix.DSNLOAD libraries. This additional library contains DSNHLI which is an alias of the CAF attach module.

So in effect the DB2 connection is by CAF even if it mentions ATTACH(TSO) in precompiler option!

Thx again!
Back to top
View user's profile Send private message
dbzTHEdinosauer

Global Moderator


Joined: 20 Oct 2006
Posts: 6966
Location: porcelain throne

PostPosted: Mon Jun 27, 2011 4:37 pm    Post subject:
Reply with quote

the same thing can be accomplished with RRSAF.
ATTACH(TSO), but the JOBLIB/STEPLIB references a DB2 load library for RRSAF with he attendent DSNHLI entry points.
Back to top
View user's profile Send private message
don.leahy

Active Member


Joined: 06 Jul 2010
Posts: 641
Location: Whitby, ON, Canada

PostPosted: Mon Jun 27, 2011 7:11 pm    Post subject:
Reply with quote

ATTACH(TSO) is essentially the default. It causes the precompiler to generate calls to the DSNHLI language interface module. What DSNHLI resolves to (i.e. what program is actually used) can be controlled at execution time (if DYNAM) by careful use of concatenation in the STEPLIB.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> DB2 All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
No new posts I can not compile my program PL1 V3.R... Miguel Fernandez PL/I & Assembler 13 Tue Dec 06, 2016 8:30 pm
No new posts IMS BMP program causes 878 system abend Artemk IMS DB/DC 7 Tue Nov 22, 2016 8:26 pm
This topic is locked: you cannot edit posts or make replies. RANDOM Function in COBOL swapnil781 COBOL Programming 2 Tue Nov 15, 2016 6:17 pm
No new posts TOT & DATE parameter in ICEMAN hemanthj642 DFSORT/ICETOOL 4 Mon Nov 14, 2016 5:19 am
No new posts Regarding COBOL Stored Procedure opti... selvamsrinivasan85 DB2 4 Fri Nov 04, 2016 8:57 pm


Facebook
Back to Top
 
Mainframe Wiki | Forum Rules | Bookmarks | Subscriptions | FAQ | Tutorials | Contact Us