Min no of member?s (PDS) in one directory block?
Answers were Sorted based on User's Feedback
Answer / anju
if directory block is given as 0 then it is not a pds and
ps doesn't have members .
Is This Answer Correct ? | 18 Yes | 1 No |
Answer / deenval
yes min no of member should be zero, but max no. will be 5.
according to formula m = 6*n - 1, when n=1 then m will be 5
and when n will be to 2 then m will be 11.
Is This Answer Correct ? | 19 Yes | 3 No |
Answer / steve holton
Add'l info to above - I was wondering where the 6n-1 stuff
came from, and found that ISPF adds 30 bytes of user
information to each entry, so the total for each entry is 42
bytes. So for an ISPF directory block (assuming you do NOT
use STATS OFF...) 6 entries will fir in each directory
block. The LAST entry in the directory is always a "dummy"
entry with member name x'FFFFFFFFFFFFFFFF', so I am assuming
that the 6n-1 is actually a calculation as to how many
members a directory of a certain size can hold. So, for
example, an ISPF (STATS ON) dataset can hold (6 x number of
directory blocks) - 1 (for the x'FF... dummy entry) members,
asuming that you don't x37 abend because "data size".
Note that the binder (linkage editor) apppears to fit 7
members per directory block (24 bytes user data = 36
bytes/entry), so for load modules (not PDSE program
objects...), the corresponding formula is 7n - 1, and for
IEBCOPY or IEBUPDTE created members with no user data (12
bytes per entry) 21n - 1.
Is This Answer Correct ? | 3 Yes | 0 No |
Answer / steve holton
PDS directory blocks are 256 bytes long. The first halfword
(2 bytes) are used to indicate the number of bytes used in
the block, leaving 254 bytes for directory entries.
Directory entries are variable in size, and are each at
least 12 bytes long, and up to 74 bytes long (12 byte "base"
length plus up to 62 bytes user data).
Directory blocks may have no members, so 0 is the minimum
possible members in a block. If the question is re-worded to
something like "what is the minimum number of entries in a
FULL directory block?", the answer is floor(254/74) = 3.
That is, every PDS directory block is capable of holding AT
LEAST 3 entries.
Maximum possible entries in a full directory block would be
floor(254/12) = 21.
Is This Answer Correct ? | 3 Yes | 0 No |
Answer / janar singh
calculatin by using the farmoula m=6*n-1, where n = no of db, so if n=1 then max mem will be 5. if i m wrong correct me pls.
Is This Answer Correct ? | 2 Yes | 0 No |
Answer / karthik
i have doubt in will anyone rectify it 6n-1
what is that 1 indicates
Is This Answer Correct ? | 1 Yes | 0 No |
Answer / shailendra
i agree with ans of santosh
their is formula to count for max no.member
m = (6*n)-1 (but this formula implement when n directory
block is greater then one otherwise when n =1 so m will 6)
Is This Answer Correct ? | 7 Yes | 7 No |
Answer / anisha
Thats not pretty clear, if using the formula minimum number
is zero, maximum should be:
(6*0)-1 = -1
So, the munimum possible is 1, and the maximum possible is
5.
Is This Answer Correct ? | 3 Yes | 10 No |
how do you access an uncataloged dataset in a jcl?
what will be the error code if duplicate key of VSAM file is found?
what are the options in file-aid to edit vsam dataset and to compare data sets.
What is COND=EVEN ?
Name some of the JCL statements that are not allowed in procs.?
if we compile the cobol+ db2 program now ofter 5 years we need to compile again?
Explain about LMCOPY -
how to code instream data in procedure?
One dataset is creating in the step1 with LRECL of 133 and the same dataset is used in the next step in DISP=SHR mode, but while scanning the JCL the following error is thrwon. Please verify the below JCL $/SEPP030.PROVIDER DD DSN=Z1225BT.F5750PG9.F5910PRV.QC#A6868 //ERRORRPT DD DSN=F5910&ST&IN..F5910EPP.ERRORRPT.P&CYCDATE, --ERRORRPT DD DSN=F5910PG.F5910EPP.ERRORRPT.P, // DISP=&DISNCD,UNIT=&DELQ, -- DISP= (NEW,CATLG,DELETE),UNIT=DELQ, // SPACE=(TRK, (30,15),RLSE), // DCB=&DCB2 -- DCB= (PPG.METMODEL,BLKSIZE=0,LRECL=133,RECFM=FB) $/SEPP030.ERRORRPT DD DSN=Z1225BT.F5910EPP.ERRORRPT.AOUTPUT //SEPP040 EXEC PGM=FILEAID,COND= (0002,EQ,SEPP030) //SYSPRINT DD SYSOUT=* //SYSLIST DD SYSOUT=* //DD01 DD DSN=SYSCMN.PROD.CCLIB (F5910EP1),DISP=SHR $/SEPP040.DD01 DD DSN=Z1225BT.TEST.CCLIB (F5910EP1) E1 - DSS20791E - DATA SET 'Z1225BT.F5910EPP.ERRORRPT.AOUTPUT' HAS AN LRECL OF 133 COULD NOT BE OPENED BECAUSE THE CODED LRECL WAS 80. // DD DSN=F5910&ST&IN..F5910EPP.ERRORRPT.P&CYCDATE, -- DD DSN=F5910PG.F5910EPP.ERRORRPT.P, // DISP=SHR $/ DD DSN=Z1225BT.F5910EPP.ERRORRPT.AOUTPUT please find the error code in the above mentioned lines and please suggest me about the error and the solution for that.
IN-STREAM DATA NOT ALLOWED IN PROC how can come out from this problem
in jcl you are having JCLLIB and STEPLIB what happens
if we are specifing joblib as well as steplib in job then at the time of execution how the process will complete