Joined: 26 Nov 2002 Posts: 12382 Topics: 75 Location: San Jose
Posted: Tue Jun 29, 2004 4:34 am Post subject:
Vkphani,
With DFSORT R14 PTF UQ99331 the maximum length you can have for a Character data for an ON Condition is 1500 bytes and you can have a maximum of 10 conditions. So even with 10 conditions the total comes to only 15,000 bytes. So you cannot use the select statement for finding the duplicates. With Syncsort it is even lesser. The max for a character field is only 256.You are better off coding a pgm for this
If your input file is VB, then you can drop duplicates with each length regardless of what's in the record, you can use the RDW.
Code:
//TOOLIN DD *
SELECT FROM(IN) TO(OUT) ON(1,4,BI) FIRST DISCARD(SORTXSUM)
Joined: 02 Dec 2002 Posts: 1618 Topics: 31 Location: San Jose
Posted: Tue Jun 29, 2004 10:37 am Post subject:
Kolusu wrote
Quote:
So even with 10 conditions the total comes to only 15,000 bytes.
Actually, you can't go that high.
For DFSORT, the maximum number of bytes you can use for the "key" to check for duplicates is 4084 (with EQUALS). This is true whether you use ICETOOL's SELECT or DFSORT's SUM FIELDS=NONE.
Paneendra,
You can't use a key of 32756 bytes. The maximum key you can use is 4084 bytes (with EQUALS).
Do you really expect your records to be the same for 4084 bytes and then different after that?
With DFSORT R14 PTF UQ90053 (Feb, 2003), the limit for a CH ON field used with ICETOOL's SELECT is 1500 bytes. So to use the maximum of 4084 bytes, you would specify:
ON(1,1500,CH) ON(1501,1500,CH) ON(3001,1084,CH)
If you do not have PTF UQ90053 installed, ask your System Programmer to install it (it's free). It's been available for over a year now. Without UQ90053, the limit for a CH field is 80 bytes and you can have a maximum of 10 ON fields, so that will only get you up to a key of 800 bytes. _________________ Frank Yaeger - DFSORT Development Team (IBM)
Specialties: JOINKEYS, FINDREP, WHEN=GROUP, ICETOOL, Symbols, Migration
DFSORT is on the Web at:
www.ibm.com/storage/dfsort
Joined: 02 Dec 2002 Posts: 1618 Topics: 31 Location: San Jose
Posted: Tue Jun 29, 2004 10:44 am Post subject:
Paneendra wrote
Quote:
The following RDW is not elminating the duplicate records.
//TOOLIN DD *
SELECT FROM(IN) TO(OUT) ON(1,4,BI) FIRST DISCARD(SORTXSUM)
The length is actually in the first 2 bytes of the RDW, although the second two bytes are usually zeros. ON(VLEN) is better to use than ON(1,4,BI). ON(VLEN) is equivalent to ON(1,2,BI).
However, ON(VLEN) is only useful when your input data set has RECFM=VB. In this case, your SELECT statement will write the first record with each length to OUT and the other records to SORTXSUM. I doubt that's what you want. _________________ Frank Yaeger - DFSORT Development Team (IBM)
Specialties: JOINKEYS, FINDREP, WHEN=GROUP, ICETOOL, Symbols, Migration
DFSORT is on the Web at:
www.ibm.com/storage/dfsort
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum