Hello,
i tried to find out how many members fit into a single DD statement, but did not find a single source.
I need to do something like this:
//SYSUT1 DD DSN=&SYSUID..TEST.#0001,DISP=(SHR,DELETE,KEEP)
//_______DD DSN=&SYSUID..TEST.#0002,DISP=(SHR,DELETE,KEEP)
//_______DD DSN=&SYSUID..TEST.#0003,DISP=(SHR,DELETE,KEEP)
...
//_______DD DSN=&SYSUID..TEST.#N,DISP=(SHR,DELETE,KEEP)
How big can N be?
I know that around 3273 DDs can exist in a single job, but not how many members can exist in a single dd statement.
Thanks & Regards
Jackson
How many members fit in a single DD statement?
Re: How many members fit in a single DD statement?
Have you googled ???
It depends on the size of your TIOT is seems
It depends on the size of your TIOT is seems
-
- Global moderator
- Posts: 3025
- Joined: Sun Jul 04, 2010 12:13 am
- Skillset: JCL, PL/1, Rexx, Utilities and to a lesser extent (i.e. I have programmed using them) COBOL,DB2,IMS
- Referer: Google
- Location: Pushing up the daisies (almost)
Re: How many members fit in a single DD statement?
Whilst I was Googling Expat came up with the above. This is the second result from my Googling (taken from the results page not the link):
Edit: I tried that link and it came up with page not found.
Concatenating Data Sets Sequentially - IBM
https://www.ibm.com/support/knowledgece ... seqcat.htm
The system can retrieve two or more data sets and process them successively as a single sequential data set. This is called sequential concatenation. The number of data sets that you can concatenate with sequential concatenation is variable. It is governed by the maximum size of the TIOT option. The system programmer
Edit: I tried that link and it came up with page not found.
The problem I have is that people can explain things quickly but I can only comprehend slowly.
Regards
Nic
Regards
Nic
Re: How many members fit in a single DD statement?
Thank you NicC, was not sure of the TIOT variable was not only regulating the amount DD statements and steps, but also the allowed amount of members in a single DD Statement.
http://publibz.boulder.ibm.com/cgi-bin/ ... 0126222340 shows how much TIOT space a DD statement uses, but i am not sure if the same formular applies for members in a single DD statement.
http://publibz.boulder.ibm.com/cgi-bin/ ... 0126222340 shows how much TIOT space a DD statement uses, but i am not sure if the same formular applies for members in a single DD statement.
-
- Global moderator
- Posts: 3720
- Joined: Sat Dec 19, 2009 8:32 pm
- Skillset: Systems programming, SAS, COBOL, CICS, JCL, SMS, VSAM, etc.
- Referer: other forum
- Location: Dubuque, Iowa, USA
Re: How many members fit in a single DD statement?
is from https://www.ibm.com/support/knowledgece ... seqcat.htm.The system can retrieve two or more data sets and process them successively as a single sequential data set. This is called sequential concatenation. The number of data sets that you can concatenate with sequential concatenation is variable. It is governed by the maximum size of the TIOT option. The system programmer controls the TIOT size with the option ALLOCxx member of SYS1.PARMLIB. The smallest TIOT value allows 819 single-unit DD statements or 64 DD statements having the maximum number of units. See z/OS MVS Initialization and Tuning Reference. When data sets are sequentially concatenated, your program is open to only one of the data sets at a time. Concatenated data sets cannot be read backward.
Furthermore, TIOT calculations must factor in the number of units and not just the number of DD statements, as this quote from the MVS Initialization and Tuning Reference manual for the ALLOCxx member indicates:
The DD limit is 259, not 3273, when every DD statement uses the maximum (59) number of units.Use the following to calculate the maximum number of DDs allowed per Job Step:
The TIOT Prefix, Header, and Trailer consume sixty (60) ('3C'x) bytes of the total TIOT space available to a Job Step.
A DD statement requesting a single unit requires twenty (20) bytes ('14'x) of TIOT space. The TIOT space requirement for entire step is 80 bytes.
//TAPEJOB JOB
//STEP1 EXEC PGM=IEFBR14
//DD1 DD UNIT=3490 ** DD requires 20 bytes *
A DD statement requesting two (2) units requires twenty four (24) bytes ('18'x) of TIOT space. Twenty bytes for the basic information for the first unit and an additional four bytes for the second unit. The TIOT space requirement for entire step is 84 bytes.
//TAPEJOB JOB
//STEP1 EXEC PGM=IEFBR14
//DD1 DD UNIT=(3490,2) ** DD requires 24 bytes *
A DD requesting the maximum number of units allowed, fifty nine (59), utilizes two hundred fifty two (252) bytes ('FC'x) of TIOT space. The TIOT space requirement for entire step is 312 bytes.
//TAPEJOB JOB
//STEP1 EXEC PGM=IEFBR14
//DD1 DD UNIT=(3490,59) ** DD requires 252 bytes *
A Job Step with three (3) DD statements and each DD requesting one more unit than the previous DD would use the following TIOT space; TIOT space requirement for entire step is 132 bytes.
//TAPEJOB JOB
//STEP1 EXEC PGM=IEFBR14
//DD1 DD UNIT=3490 ** DD requires 20 bytes *
//DD2 DD UNIT=(3490,2) ** DD requires 24 bytes *
//DD3 DD UNIT=(3490,3) ** DD requires 28 bytes *
-
- Global moderator
- Posts: 2105
- Joined: Thu Jun 03, 2010 6:21 pm
- Skillset: Assembler, JCL, utilities
- Referer: zos.efglobe.com
Re: How many members fit in a single DD statement?
Well, since a PDS must be on 1 disk volume, the TIOT entry for the DD statement requires 20 bytes. For all practical purposes you have the limit of the TIOT size and any limits as to the number of data sets in a concatenation.
Since a member is specified, it is the equivalent of a sequential data set. In sequential concatenation , for all intents and purposes, each DD statement is opened as though it were a new data set by itself, so I'm not sure if a limits about data sets in a partitioned data set concatenation apply. 259 data sets have been bandied about here, but the issues become more complex when the data sets have multiple extents. This link is old, but I think it's still correct.
Since a member is specified, it is the equivalent of a sequential data set. In sequential concatenation , for all intents and purposes, each DD statement is opened as though it were a new data set by itself, so I'm not sure if a limits about data sets in a partitioned data set concatenation apply. 259 data sets have been bandied about here, but the issues become more complex when the data sets have multiple extents. This link is old, but I think it's still correct.
-
- Global moderator
- Posts: 3006
- Joined: Fri Apr 18, 2008 11:25 pm
- Skillset: tso,rexx,assembler,pl/i,storage,mvs,os/390,z/os,
- Referer: www.ibmmainframes.com
Re: How many members fit in a single DD statement?
still the original question is not clear ...
the simple reply, imo, would be according to the jcl rules,
a dd statement can contain just one member
//ddname DD DISP=...,DSN=SOME_PDS(SOME_MEMBER)
// DD DISP=...,DSN=SOME_OTHER_PDS(SOME_OTHER_MEMBER)
the simple reply, imo, would be according to the jcl rules,
a dd statement can contain just one member
//ddname DD DISP=...,DSN=SOME_PDS(SOME_MEMBER)
// DD DISP=...,DSN=SOME_OTHER_PDS(SOME_OTHER_MEMBER)
cheers
enrico
When I tell somebody to RTFM or STFW I usually have the page open in another tab/window of my browser,
so that I am sure that the information requested can be reached with a very small effort
enrico
When I tell somebody to RTFM or STFW I usually have the page open in another tab/window of my browser,
so that I am sure that the information requested can be reached with a very small effort
-
- Global moderator
- Posts: 3720
- Joined: Sat Dec 19, 2009 8:32 pm
- Skillset: Systems programming, SAS, COBOL, CICS, JCL, SMS, VSAM, etc.
- Referer: other forum
- Location: Dubuque, Iowa, USA
Re: How many members fit in a single DD statement?
I think some of the confusion is terminology -- the TS appears to be using "members" when referring to sequential data sets
//SYSUT1 DD DSN=&SYSUID..TEST.#0001,DISP=(SHR,DELETE,KEEP)
//_______DD DSN=&SYSUID..TEST.#0002,DISP=(SHR,DELETE,KEEP)
//_______DD DSN=&SYSUID..TEST.#0003,DISP=(SHR,DELETE,KEEP)
...
//_______DD DSN=&SYSUID..TEST.#N,DISP=(SHR,DELETE,KEEP)
-
- Global moderator
- Posts: 2105
- Joined: Thu Jun 03, 2010 6:21 pm
- Skillset: Assembler, JCL, utilities
- Referer: zos.efglobe.com
Re: How many members fit in a single DD statement?
I agree with Mr. Sorichetti. The question is poorly worded. How about, "How many members can be specified in JCL on one DD statement. The answer in one. "How many members can exist in one partitioned data set?" There we can state, there is no defined limit; though there seem to be limits in a PDSE data set, however these limits, even in PDSE V1 data sets, seem to be quite large.
-
- Posts: 474
- Joined: Thu Mar 10, 2016 5:03 pm
- Skillset: assembler rexx zOS ispf racf smf
- Referer: saw it in the experts foprum thought I could help here
Re: How many members fit in a single DD statement?
Well, you could try. Use PGM=IEFBR14 and specify the same datasetname a number of times. Start with 20000 and increase by 5000. That will give you the number for your installation.
-
- Similar Topics
- Replies
- Views
- Last post
-
-
Merging PDS members into single sequential file.
by jcbrotel » Thu Aug 18, 2022 7:27 pm » in IBM Cobol - 4
- 2914
-
by prino
View the latest post
Fri Aug 19, 2022 11:20 pm
-
-
- 2
- 2345
-
by steve-myers
View the latest post
Sat Nov 14, 2020 6:17 am
-
-
FTP PDS members into desktop
by kalyani krishna » Tue Feb 28, 2023 10:47 pm » in Interview Questions - 1
- 2001
-
by dneufarth
View the latest post
Wed Mar 01, 2023 5:28 am
-
-
- 4
- 6239
-
by steve-myers
View the latest post
Sat May 15, 2021 1:58 am
-
- 3
- 1250
-
by jcdm
View the latest post
Fri Sep 15, 2023 2:27 am