Suppose, file A has 100 records and file B has 500 records. We
want to write records common to both A and B into file C and
records which are present only in either A or B into another file D.
What should be the logic of Cobol program to achieve this?
Answers were Sorted based on User's Feedback
Answer / m
correction to #3
sort files Asc
if f1 = f2
move file1-rec to file3-rec. write file3-rec
read f1 & f2.
if f1 < f2
move file1-rec to file4-rec. write file4-rec.
read f1.
if f1 > f2
move file2-rec to file4-rec. write file4-rec
read f2.
| Is This Answer Correct ? | 11 Yes | 1 No |
Answer / karan
If we do not want to go with cobol then it can be easily
done with SORT, ICETOOL( Splice option) which i feel is
faster and simpler instead of writing a compare program.
If there is a compultion to use a cobol pgm then soln will
be -
PERFORM untill (EOF A and EOF B)
if f1 = f2
move file1-rec to file3-rec. write file3-rec
read f1 & f2.
if f1 < f2
move file1-rec to file4-rec. write file4-rec.
read f1.
if f1 > f2
move file2-rec to file4-rec. write file4-rec
read f2.
END PERFORM
IF EOF A and not EOF B
PERFORM until EOF B
move move file2-rec to file4-rec.
write file4-rec
read f2.
END PERFORM
ElSE
IF EOF B and not EOF A
PERFORM until EOF A
move move file1-rec to file4-rec.
write file4-rec
read f1.
END PERFORM
END
note: files should be in sorted order ASC before program
runs.
This is a generic solution to al such compare programs.
| Is This Answer Correct ? | 5 Yes | 1 No |
Answer / suresh
sort the file by using key...and perform matching logic
| Is This Answer Correct ? | 0 Yes | 0 No |
Answer / shrik
Sort both file A and B using the Key in ascending order..
Then read File A and B..
Compare records read frm A and B
If found Equal write into File C (common records)
If NOT write into file D
| Is This Answer Correct ? | 6 Yes | 8 No |
Answer / hardik dave
Use SYNCSORT and you will get all matching records in one
file and all those non matching records in another. Just
read more on SYNCSORT and you will be clear.
| Is This Answer Correct ? | 3 Yes | 6 No |
Answer / vinod
if f1 = f2
move file1-rec to file3-rec
write file3-rec
if f1 < f2
move file2-rec to file4-rec
write file4-rec.
if f1 > f2
move file1rec to file4-rec
write file4-rec
| Is This Answer Correct ? | 2 Yes | 6 No |
How to define a array dynamically.....
How to fetch 1000 error records from VSAM file(Eg: 1000000 records present) while getting SOC7 abend ?
how can u find out just by seeing wheater it is main program or sub program ? any two ways to identify reply soon ?
What is ASKTIME, SUSPEND
What is the difference between structured cobol programming and object alternativelyiented cobol?
WORKING-STORAGE SECTION. 01 VAR1 COMP-2 VALUE 0. PROCEDURE DIVISION. MOVE 10.2115 TO VAR1. DISPLAY 'VAR1 =' VAR1. GOBACK. 10.2115 is stored as .10211499999999996E 02 in OS VS Cobol 10.2115 is stored as .10211500000000000E 02 in ecobol. Any reason why?
what is the minimum number of lines a Cobol program should have to successfully compile and run
77 I pic 99 value 5 Perorm para-A I times. Para -A. move 10 to I. How many times the para-A will be executed.?
What is 77 level used for ?
What is the difference between Perform para and perform asaection in cobol?
01 a pic 9(6) value is 123456 01 b pic 9(3) move a to b wht will be the value ?
What do you do to resolve SOC-7 error?