Hi all, i have a dataset containing some 10,000 records. I have to extract records based on their relative position in the file. for example I want the records in interval of 1000. 1000th rec, 2000th rec .....10,000th record. So my output file should contain only 10 records. I have used STARTREC & STOPREC. But I am able to fetch only 1 record at a time.
Only the 3000th record is getting copied. I tried using SKIPREC as well but in that case I am able to skip records initially and select from there. But in my scenario i want the skipping intermitently.Can anyone pls let me know how to iterate selection by skipping every 1000 recs?
Joined: 15 Feb 2005 Posts: 7129 Location: San Jose, CA
Here's the description of SAMPLE from "z/OS DFSORT Application Programming Guide".
SAMPLE= n or SAMPLE=(n,m)
Specifies a sample of OUTFIL input records to be processed for this OUTFIL group. The sample consists of the first m records in every nth interval.
n specifies the interval size. The value for n starts at 2 (sample every other record) and is limited to 28 digits (15 significant digits).
m specifies the number of records to be processed in each interval. The value for m starts at 1 (process the first record in each interval) and is limited to 28 digits (15 significant digits). If m is not specified, 1 is used for m. If m is specified, it must be less than n.
Sample Syntax:
Code:
* PROCESS RECORDS 1, 6, 11, ...
OUTFIL FNAMES=OUT1,SAMPLE=5
* PROCESS RECORDS 1, 2, 1001, 1002, 2001, 2002
OUTFIL FNAMES=OUT2,SAMPLE=(1000,2),ENDREC=2500
* PROCESS RECORDS 23, 48, 73
OUTFIL FNAMES=OUT3,STARTREC=23,ENDREC=75,SAMPLE=25
* PROCESS RECORDS 1001, 1002, 1003, 1101, 1102, 1103, ...
OUTFIL FNAMES=OUT4,STARTREC=1001,SAMPLE=(100,3)
Note: All of the DFSORT books are available online at: