My input has some 14000 records with duplicates.
When i sort this using ICETOOL to remove the duplicates and display all the unique records, only 24 records are coming as output.
By manually viewing the records i am able to find atleast 80 unique records.
Could anyone explain to me why it is so and how do i get all the unique records.
If you want to write all of the unique records to an output data set, you can use a SELECT statement like this:
SELECT FROM(IN) TO(OUT) ON(p,m,f) FIRST
where p,m,f is the starting position, length and format of the key you want to check for duplicates. Remember that if your RECFM is VB, you have to add 4 to p to account for the RDW in positions 1-4.
If you want to display each unique key, you can use an OCCUR statement like this:
OCCUR FROM(IN) LIST(OUT) ON(p,m,f)
If that doesn't help, then you need to explain exactly what it is you're trying to do. Show your complete job with all of the ICETOOL and DFSORT control statements. Show a subset of input records and output records that illustrates the "problem" you think you're having. Indicate what you expect for output. State the RECFM and LRECL of the input file.
If you're not familiar with DFSORT and DFSORT's ICETOOL, I'd suggest reading through "z/OS DFSORT: Getting Started". It's an excellent tutorial, with lots of examples, that will show you how to use DFSORT, DFSORT's ICETOOL and DFSORT Symbols. You can access it online, along with all of the other DFSORT books, from: