From: "Elardus Engelbrecht" <[email protected]> 
To: [email protected] 
Sent: Monday, April 22, 2013 11:18:21 AM 
Subject: Re: Files in PDS's with different LRECL's 

>Skip Robinson wrote: 
>>Some of the posts in this thread seem to view DCB attributes as a stick-on 
>>label that can be peeled off and replaced as needed. 


>Very true. As you said, BLKSIZE determines the final layout of the logical 
>records which may or may not be read back in properly. 
> >All in all, I can't imagine what 'convenience' would be achieved by creating 
> >write-only PDS(E) members. 


>'Write only'? ;-) 
>You're thinking of that WORM CDs with reading disabled? ;-) 


I think he means that after being written the block could never be successfully 
read back in, which would rended it WORN (Write Once Read Never). 

Bill Fairchild 
Franklin, TN 


----- Original Message -----
From: "Elardus Engelbrecht" <[email protected]> 
To: [email protected] 
Sent: Monday, April 22, 2013 11:18:21 AM 
Subject: Re: Files in PDS's with different LRECL's 

Skip Robinson wrote: 

>Some of the posts in this thread seem to view DCB attributes as a stick-on 
>label that can be peeled off and replaced as needed. 

Very true. As you said, BLKSIZE determines the final layout of the logical 
records which may or may not be read back in properly. 

>All in all, I can't imagine what 'convenience' would be achieved by creating 
>write-only PDS(E) members. 

'Write only'? ;-) 
You're thinking of that WORM CDs with reading disabled? ;-) 

To the OP: I would suggest that you do for your problem (RECFM=FB): 

Look for all datasets (or 'files' you called it) which one has the largest 
LRECL. 

Then create your PDS and use IEBGENER to copy all your datasets as members to 
that PDS. You may need a quick and dirty REXX to create such thing if you have 
'several' datasets. 

I created 3 SEQ datasets with LRECL of say 10, 20, 30 and one PDS or PDS-E with 
LRECL=80. 

Below is a WORKING example: 

//STEP1    EXEC PGM=IEBGENER                   
//SYSUT1   DD DISP=SHR,DSN=....PEST1       <-- shortest LRECL 
//SYSUT2   DD DISP=OLD,DSN=....PEST4(PEST1) 
//SYSPRINT DD SYSOUT=*                         
//SYSIN    DD DUMMY                           
//STEP1    EXEC PGM=IEBGENER                   
//SYSUT1   DD DISP=SHR,DSN=....PEST2       <-- longer LRECL 
//SYSUT2   DD DISP=OLD,DSN=....PEST4(PEST2) 
//SYSPRINT DD SYSOUT=*                         
//SYSIN    DD DUMMY                           
//STEP1    EXEC PGM=IEBGENER                   
//SYSUT1   DD DISP=SHR,DSN=....PEST3       <-- more longer LRECL 
//SYSUT2   DD DISP=OLD,DSN=....PEST4(PEST3) 
//SYSPRINT DD SYSOUT=*                         
//SYSIN    DD DUMMY                           

Caveat: all extra bytes will be x'00', unless you use something (Assembler / 
REXX) to parse out the short LRECL and pad it with your favourite blank 
character. 

Oh, you can use DFSORT to handle this very easily. Ask Prof Sort about record 
reformatting. ;-) 

HTH! 

Groete / Greetings 
Elardus Engelbrecht 

---------------------------------------------------------------------- 
For IBM-MAIN subscribe / signoff / archive access instructions, 
send email to [email protected] with the message: INFO IBM-MAIN 

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to