We have two PS files,want to compare those files and put
the duplicate records in one file.
Input file 1 contains(1,2,4,9,10)
Input file 2 contains (1,4,5,11,12,14,16).
Help me with jcl.
Answers were Sorted based on User's Feedback
Answer / shriram supalwar, dharmabad
//jobcard
//step1 exec pgm=iebgener
//sysprint dd sysout=*
//sysut1 dd dsn=proj.test.file1,disp=shr
// dd dsn=proj.test.file2,disp=shr
//sysut2 dd dsn=proj.output,disp=shr
//sysin dd dummy
//if (step1.rc eq 0) then
//step2 exec pgm=sort
//sysprint dd sysout=*
//sortin dd dsn=proj.output,disp=shr
//sortout dd dsn=proj.sortout,disp=shr
//sortxsum dd dsn=proj.duplicate,disp=shr
//sysin dd *
sort fields=(1,5,ch,a)
sum fields=none,xsum
/*
Now, all these records are copied to proj.output
and out of those records the duplicate records are copied to
proj.duplicate
Correct me if i am wrong
| Is This Answer Correct ? | 3 Yes | 1 No |
Answer / aditi
hi,
I have also faced the same question.
as we have the two seperate input files.
Nitika, U have taken only one input file so how we sort it
using only one file?
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / nitika
Use SORTXSUM utility in JCL to get the output.
//JOB1 JOB ,, CLASS = A
//STEP1 EXEC PGM=SORT
//SORTIN DD DSN=TEST.PS.INPUT
//SORTOUT DD DSN=TEST.PS.OUTPUT
//SORTXSUM DD DSN=TEST.PS.OUTPUT
//SYSIN DD *
SORT FIELDS = (1,1,CH,A)
SUM FIELDS = (NONE,XSUM)
/*
Now SUM FIELDS = NONE means no duplicates in the output file
(TEST.PS.OUTPUT)and XSUM means duplicates, in the two files
being matched, should be sent to the file mentioned in
SORTXSUM ddname.
So, output file will have 1,4.
| Is This Answer Correct ? | 3 Yes | 3 No |
Answer / karthik
@aditi n nikita
i think we can use ibm utility iebcompare
| Is This Answer Correct ? | 0 Yes | 0 No |
Answer / mdv
@Shriram Supalwar, Dharmabad
You don't need the IEBGENER STEP.
Your second step sort can have both the files concatenated
as one and given as Input.
Thanks
| Is This Answer Correct ? | 0 Yes | 0 No |
Use join keys
//STEP01 EXEC PGM=SORT
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SORTJNF1 DD DSN=INPUT.FILE.ONE,DISP=SHR
//SORTJNF2 DD DSN=INPUT.FILE.TWO,DISP=SHR
//SORTOUT DD DSN=OUTPUT.FILE,
// DISP=(NEW,CATLG,DELETE),
// SPACE=(CYL,(100,200),RLSE),
// DCB=(RECFM=FB,BLKSIZE=0,LRECL=80)
//SYSIN DD *
SORT FIELDS=COPY
JOINKEYS FILES=F1,FIELDS=(1,10,A)
JOINKEYS FILES=F2,FIELDS=(1,10,A)
REFORMAT FIELDS=(F1:1,71,F2:1,9)
/*
| Is This Answer Correct ? | 0 Yes | 0 No |
GDGs can be CREATED (not COPIED) only on DASD and NOT on tape drives ? Is it True ?
Can we create VSAM file by using IEBGENER?
What type of versions we r using in mainframe (jcl, cobol, db2, vsam, cics)?
IIN APITUDE THEY GAVE ONLY 10 QUESTIONS.. THEY ARE SIMPLE ONE FROM NUMBER SERIES,BOATS,TIME & DISTANCE,PROFIT &LOSS,FIND OUT THE NUMBER ? 9 25 4 36 81 64 49 AND surveillance SPELLINGS E.T.C
When space is allocated for an output dataset, what units can be used?
what is static and dynamic call with examples?
How do you create a temporary dataset?
How to release a JOB (from the input queue) held by TYPRUN = HOLD ? and how to see the installation default time after which a JOB will be automatically released ? How to see the list of currently HELD JOBS ?
Describe the EXEC statement, its meaning, syntax and keywords?
What are the difference between jcl and jes?
Can we use DISP=SHR in output file in JCL
what happens if job falls in loop ? how to resolve it ?