View previous topic :: View next topic
|
Author |
Message |
enchantingblues
New User
Joined: 27 Sep 2007 Posts: 6 Location: India
|
|
|
|
Hi all,
I am new to Mainframe and JCL. I am having to use JCL which is using many Steps that uses the same dataset and performs many operation.
I want to see the output of each step in my Spool SYSOUT.
DD1 DD DSN = SOMELOCATION.
Can i use the SYSOUT DD DDNAME= DD1
Is this valid ? how can I assign it to my SPOOL SYSOUT ?
Sorry if too amateurish !
Regards
Prabhu |
|
Back to top |
|
|
murmohk1
Senior Member
Joined: 29 Jun 2006 Posts: 1436 Location: Bangalore,India
|
|
|
|
Prabhu,
Quote: |
Can i use the SYSOUT DD DDNAME= DD1 |
You can use like this. Only thing you need to change above is DDNAME to DSN/DSNAME.
'ddname' has another meaning. |
|
Back to top |
|
|
enchantingblues
New User
Joined: 27 Sep 2007 Posts: 6 Location: India
|
|
|
|
HI Murmohk,
Firstly thanks a lot for such a quick reply.
I tried what you mentioned. But I am getting a error saying ALLOCATION FAILED DUE TO DATA FACILITY SYSTEM ERROR
I have one questions swinging over my head.
Can only Display Statements in the PGM be seen in SYSOUT ?
How is that some outputs/results are shown in the SYSOUT. Is there any standard procedure used for SYSOUT ?
Also wat it means by DDNAME has another meaning ???
Kindly help.
Eager and Enthusiastic Mainframe lover ! |
|
Back to top |
|
|
murmohk1
Senior Member
Joined: 29 Jun 2006 Posts: 1436 Location: Bangalore,India
|
|
|
|
Prabhu,
Quote: |
But I am getting a error saying ALLOCATION FAILED DUE TO DATA FACILITY SYSTEM ERROR |
Did you try to allocate 'already' existing ifle (dup file)? May be you post your JCL and the spool messages. |
|
Back to top |
|
|
murmohk1
Senior Member
Joined: 29 Jun 2006 Posts: 1436 Location: Bangalore,India
|
|
Back to top |
|
|
Phrzby Phil
Senior Member
Joined: 31 Oct 2006 Posts: 1049 Location: Richmond, Virginia
|
|
|
|
Since you are new to mainframes, I suggest that you at least perform a cursory review of a basic JCL manual, so at least you have the correct terminology to ask questions.
To jump right in with no education is not necessarily a good use of your or others' time.
I've been using mainframes since the 60's, and I am still learning new things.
Good Luck. |
|
Back to top |
|
|
murmohk1
Senior Member
Joined: 29 Jun 2006 Posts: 1436 Location: Bangalore,India
|
|
|
|
Phrzby,
Quote: |
I suggest that you at least perform a cursory review of a basic JCL manual, |
One thing which 'most of the forum population' DONT do (may be 'harsh' but its the truth). |
|
Back to top |
|
|
Phrzby Phil
Senior Member
Joined: 31 Oct 2006 Posts: 1049 Location: Richmond, Virginia
|
|
|
|
What??!! Now you tell me! I'd have never thunk it.
Now if I can just figure out how to loop in JCL I'll be rich. Can anyone tell me? Or perhaps how to reset a previously executed step's return code. Then none of my jobs will fail anymore. |
|
Back to top |
|
|
murmohk1
Senior Member
Joined: 29 Jun 2006 Posts: 1436 Location: Bangalore,India
|
|
|
|
Phrzby,
Quote: |
What??!! Now you tell me! I'd have never thunk it.
Now if I can just figure out how to loop in JCL I'll be rich. Can anyone tell me? Or perhaps how to reset a previously executed step's return code. Then none of my jobs will fail anymore. |
Dint get you. |
|
Back to top |
|
|
stodolas
Active Member
Joined: 13 Jun 2007 Posts: 631 Location: Wisconsin
|
|
|
|
murmohk1: The OP requested output to the spool, not a file, so there is no need to have a file previously created |
|
Back to top |
|
|
enchantingblues
New User
Joined: 27 Sep 2007 Posts: 6 Location: India
|
|
|
|
Hi all, thanks for advises, I do go through the books but i am new and its take a while to put in context. Its very valuable to each of you when you explain in very simple english. I found this a little cofusing too..
when i see statements like this
000060 //DFSVSAMP DD DISP=SHR,DSN=&IMSPROC(DF
000061 //PANDD DD DISP=SHR,DSN=&USERMAC
000062 //EZTVFM DD &SUNIT=&SDISK,SPACE=(CYL
000063 //SYSPRINT DD SYSOUT=*
000064 //SYSOUT DD SYSOUT=*
000065 //SORTMSG DD SYSOUT=*
000066 //SYSABOUT DD SYSOUT=*
000067 //SYSDBOUT DD SYSOUT=*
000068 //CEEDUMP DD SYSOUT=*
000069 //PLIDUMP DD SYSOUT=*
000070 //SYSUDUMP DD SYSOUT=*
I read that * is a positional paramets and accepts data or condition that follows it and its delimited by the next // in col1 and col2.
my question is how is sysout, which i assume is superset having all the other keyword ddnames as subsets routes/identifies the values correction.
Is there any "DDNAME" used in the PGM which is overridn in the JCL or in the PROC which we customly create. Plz help. coz this is experienced users only can help me putting the concept in contect
thanksssssssssss a lot ! |
|
Back to top |
|
|
stodolas
Active Member
Joined: 13 Jun 2007 Posts: 631 Location: Wisconsin
|
|
|
|
Quote: |
Code: |
000060 //DFSVSAMP DD DISP=SHR,DSN=&IMSPROC(DF
000061 //PANDD DD DISP=SHR,DSN=&USERMAC
000062 //EZTVFM DD &SUNIT=&SDISK,SPACE=(CYL
000063 //SYSPRINT DD SYSOUT=*
000064 //SYSOUT DD SYSOUT=*
000065 //SORTMSG DD SYSOUT=*
000066 //SYSABOUT DD SYSOUT=*
000067 //SYSDBOUT DD SYSOUT=*
000068 //CEEDUMP DD SYSOUT=*
000069 //PLIDUMP DD SYSOUT=*
000070 //SYSUDUMP DD SYSOUT=*
|
|
&USERMAC
Passed in paramaters from the JCL to the PROC, an override basically
SYSOUT DD SYSOUT=*
This will put the data to the spool (maybe the MSGCLASS for the job, I'm not positive)
The * as the position is for things like
SYSIN DD *
Control statements. |
|
Back to top |
|
|
Douglas Wilder
Active User
Joined: 28 Nov 2006 Posts: 305 Location: Deerfield IL
|
|
|
|
"//ddname DD *" is used for data input from the JCL.
"//ddname DD SYSOUT=*" is used to put the output to the spool. This * is used to use the same spool as the MSGCLASS on the job card (or default if no MSGCLASS is given).
the ddname in these are the ddname from the program.
"//SYSOUT DD SYSOUT=*" would put the displays to the spool since the ddname SYSOUT is where the displays go. |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19243 Location: Inside the Matrix
|
|
|
|
Hello,
Said slightly differently, an * can mean different things at different places in the JCL.
Looking for * in a JCL manual would most likely not provide what you want. If you look at any of your JCL statements and see something that is confusing, i'd suggest looking up that particular statement in the JCL reference manual (there are multiple sets of JCL manuals available from the "Manuals" link at the top of the page).
If you read something in the manual that is not clear, post the wording that is not clear and someone here should be able to help. |
|
Back to top |
|
|
enchantingblues
New User
Joined: 27 Sep 2007 Posts: 6 Location: India
|
|
|
|
Hi All,
Is it good practise to know which Step the error occurred in JCL,
to have cod like
JS005 EXEC PGM=MYPGM
IF( JS005 NE 0 ) THEN
SYSOUT DD*, DLM ZZ
'I am gettting abend in this step'
ZZ
END-IF
or the Standard across the industry is
JS005 EXEC PGM=MYGM
IF( JS005 NE 0 ) THEN
EXEC MPFABND
END-IF
THIS PGM should internally have SYSOUT DD SYSOUT=*
which will display the ABEND in the SPOOL ?
Can you kindly clarify why if the 2nd option is used efficient then the previous one ? Why u recommend ?
Thanking you call |
|
Back to top |
|
|
|