Page 1 of 3

Help Required in ICETOOL

PostPosted: Thu Jul 09, 2009 7:54 pm
by sultanabdulkadhar
I have 2 input files with different lengths. 1 file is a master file and contains 15 Million records with 18K Record length and second file is 14bytes length and it contains 1 Million records.

Now i want get the records from master file based on the value present in the Second file. the matching based on 14bytes of the both files.

i have tried with ICETOOL include condtion. it failed and thrown an error too many include condtions.

Sultan

Re: Help Required in ICETOOL

PostPosted: Thu Jul 09, 2009 8:17 pm
by Frank Yaeger
Please show an example of the records in each input file (relevant fields only) and what you expect for output. Explain the "rules" for getting from input to output. Give the starting position, length and format of each relevant field. Give the RECFM and LRECL of the input files. If file1 can have duplicates within it, show that in your example. If file2 can have duplicates within it, show that in your example.

Re: Help Required in ICETOOL

PostPosted: Thu Jul 09, 2009 8:34 pm
by sultanabdulkadhar
Thanks for your reply.

This is the detail about master file - 18,000Bytes(with Duplicates) RECFM FB, LRECL = 18000

09171123456ABCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
09171123456ABCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
09171123456DEFXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
09171123456GHIXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
09171123456GHIXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
09171123456JKLXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
09171123456MNOXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Second file - 14 Bytes length (No Duplicates) RECFM FB, LRECL = 14
09171123456ABC
09171123456DEF
09171123456JKL
09171123456GHI
09171123456MNO

The output file should be 18,000Bytes - Records from the Master file (unique records) No Duplicates- RECFM FB, LRECL = 18000

09171123456ABCXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
09171123456DEFXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
09171123456GHIXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
09171123456JKLXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
09171123456MNOXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Starting position is 1, Lenght of the field os 14. format of field is character.

Re: Help Required in ICETOOL

PostPosted: Thu Jul 09, 2009 9:20 pm
by Frank Yaeger
Are the records in each file already in sorted order by positions 1-14 as shown in your example?

For duplicate records in file2 with a match in file1, do you want the first file2 record of the duplicates, or the last file2 record of the duplicates, or can it be any file2 record of the duplicates?

In your example, every record in file1 has a match in file2. Is it possible for a record in file1 to have no match in file2? Is it possible for a record in file2 to have no match in file1? If so, please show a better example including these variations.

Re: Help Required in ICETOOL

PostPosted: Thu Jul 09, 2009 9:36 pm
by sultanabdulkadhar
I would say that

The records in file2(Base File) is NOT SORTED. But File2 is SORTED by 1-14.

For duplicate records in file2- i want last file2 record of the duplicate.

there is a possible record in file1 to have no match in file2.

My main concern that i should get the records in file2 from file1 based on 1-14.

Re: Help Required in ICETOOL

PostPosted: Fri Jul 10, 2009 1:34 am
by Frank Yaeger
The records in file2(Base File) is NOT SORTED. But File2 is SORTED by 1-14.


Huh? The first sentence says the records in File2 are not sorted. The second sentence says the records in File2 are sorted. Which is it? And what about File1?

Re: Help Required in ICETOOL

PostPosted: Fri Jul 10, 2009 4:01 pm
by sultanabdulkadhar
Sorry for that, That was typo.


The records in file1(Base File) is NOT SORTED. But File2 is SORTED by 1-14.

Re: Help Required in ICETOOL

PostPosted: Fri Jul 10, 2009 9:06 pm
by Frank Yaeger
Here's a DFSORT/ICETOOL job that will do what I think you asked for:

//S1   EXEC  PGM=ICETOOL
//TOOLMSG   DD  SYSOUT=*
//DFSMSG    DD  SYSOUT=*
//IN1 DD DSN=... input file1 (FB/18000)
//IN2 DD DSN=... input file2 (FB/14)
//T1 DD DSN=&&T1,UNIT=SYSDA,SPACE=(CYL,(5,5)),DISP=(MOD,PASS)
//OUT DD DSN=...  output file (FB/18000)
//TOOLIN DD *
COPY FROM(IN2) TO(T1) USING(CTL1)
COPY FROM(IN1) TO(T1) USING(CTL2)
SPLICE FROM(T1) TO(OUT) ON(1,14,CH) WITH(1,18001) USING(CTL3)
/*
//CTL1CNTL DD *
  INREC OVERLAY=(18001:C'BB')
/*
//CTL2CNTL DD *
  INREC OVERLAY=(18001:C'VV')
/*
//CTL3CNTL DD *
  OUTFIL FNAMES=OUT,INCLUDE=(18001,2,CH,EQ,C'VB'),
    BUILD=(1,18000)
/*

Re: Help Required in ICETOOL

PostPosted: Mon Jul 13, 2009 8:43 pm
by sultanabdulkadhar
Hi,

I tried with ablove code. its given error code 16.

SPLICE FROM(T1) TO(OUT) ON(1,14,CH) WITH(1,18001) USING(CTL3)
DFSORT CALL 0003 FOR SORT FROM T1 TO OUT USING CTL3CNTL TERMINATED
OPERATION RETURN CODE: 16


Please advice

Thanks,
Sultan

Re: Help Required in ICETOOL

PostPosted: Mon Jul 13, 2009 8:48 pm
by Frank Yaeger
You need to show the complete JES output, including all of the TOOLMSG and DFSMSG messages.