I have a File that has duplicate records. I need only those
records that occur more than thrice.
Answers were Sorted based on User's Feedback
Answer / pradip anand
//USERIDR JOB (M,92950000,,9999),'N=TSO.ICETOOL',MSGCLASS=M,
// CLASS=M,NOTIFY=USERID
//*
//STEP001 EXEC PGM=ICETOOL
//TOOLMSG DD SYSOUT=*
//DFSMSG DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//*
//SORTIN DD DSN=INPUT.FILE1,DISP=SHR
// DD DSN=INPUT.FILE2,DISP=SHR
//*
//EQDUPES DD DSN=OUTPUT.FILE.REC,
// DISP=(NEW,CATLG,DELETE),UNIT=SYSDA,
// DCB=(LRECL=200,RECFM=FB,BLKSIZE=0,DSORG=PS),
// SPACE=(CYL,(30,30),RLSE)
//TOOLIN DD
*
SELECT FROM(SORTIN) TO(EQDUPES) -
ON(4,4,CH) EQUAL(N)
/*
Example:
Input File1:
000 1111 12356908
001 1212 54321234
002 1323 78654323
003 5656 98765456
Input File2:
000 1000 12356908
001 1212 99999999
002 1323 77777777
003 5656 88888888
Output File:
When EQUAL(1)
000 1000 12356908
000 1111 12356908
When EQUAL(2)
001 1212 54321234
001 1212 99999999
002 1323 78654323
002 1323 77777777
003 5656 98765456
003 5656 88888888
mail me if still have any doubt.
| Is This Answer Correct ? | 3 Yes | 0 No |
Answer / brian
Sort the file in ascending order of your duplicated fields.
You can write a COBOL module to read the file sequentially.
Set up a dup-counter in Working Storage. Set up a group of
fields in Working Storage to hold duplicated fields. They
should be similar to what you are sorting on. Save each
records read fields after reading it. When you read the
current record compare it to the saved fields. If they
match add to your dup-counter. If they don't match zero
out your counter. After adding to your counter check the
value. If > 1 you have a 3rd duplicate. Write that record
to a duplicate output file. Hope I'm close to getting you
an answer.
| Is This Answer Correct ? | 3 Yes | 1 No |
IF we are calling a PROC from Jcl...This Proc have 3 steps in it and we want to execute only the second step using the JCL, How to do it?? Please give the answer ASAP:)
How to check empty file in jcl?
What is the difference between run mode and addressing mode?
Hi, If a catolog proc has another proc in it, both have ddnames dd1 and dd2. what proc will override if gave override parameter. Here both have same step names.
Is it possible to left uncode disp?
Mention the types of job control statements?
Why 16 is used in calculating the DPRTY ? as, DPRTY = (num1, num2), THEN, DPRTY = 16* num1 + num2
I have 255 procedures in a job, each procedure contain 2 steps.can we execute this job?
Explain about LMCLOSE�close a data set
Explain about RECORDING MODE Clause
Explain about User Information
Can a temporary dataset be converted to permanent dataset and vice-versa in the middle of a job ?