I have PS flat file with 14 records. I want to read from
4th to 9th record and want to write those 6 records (4th
record to 9th record) to another PS file (output file).
there is no key defined in the input file. I just want read
a certain Consecutive records. can any one please give me
the procedure division Coding for this. I have coded the
below coding but the READ-PARA is performing only 1 time
even though I have 14 records in my input file (i.e FILE-1):
PROCEDURE DIVISION.
A000-SECTION.
MOVE 0 TO I.
OPEN INPUT FILE-1.
IF CHECK-KEY1 > 0
DISPLAY "OPEN ERROR FOR FILE-1, CODE IS:" CHECK-KEY1
END-IF.
OPEN EXTEND NEWFILE-1
IF CHECK-KEY3 > 0
DISPLAY "OPEN ERROR FOR NEWFILE-1 COD IS" CHECK-KEY3
END-IF.
PERFORM READ-PARA THRU EXIT-PARA UNTIL EOF-REC = 'YES'.
DISPLAY " FINALLY OUT OF LOOP"
CLOSE FILE-1
CLOSE NEWFILE-1
STOP RUN.
READ-PARA.
ADD 1 TO I
READ FILE-1
AT END MOVE 'YES' TO EOF-REC
IF I > 3 AND < 10
PERFORM WRITE-PARA
ELSE
DISPLAY "NOT IN RANGE"
END-IF.
EXIT-PARA.
EXIT.
WRITE-PARA.
WRITE NEW-REC FROM FILE1-REC.
Answer Posted / vinayagamoorthy
Hi ,
You don't need a oobol Program itself for this instead you
could use IDCAMS PROGRAM and REPRO Coomand with the control
parameters like SKIP and COUNT to achieve the above task.
//J1 JOB NOTFIFY=TCHN003
//S1 EXEC PGM=IDCAMS
//F1 DD DSN=FILE1,DISP=SHR ---> INP FILE
//F2 DD DSN=FILE2,DISP=SHR ---> OUT FILE
//SYSIN DD *
REPRO INFILE(F1) OUTFILE(F2) -
SKIP(3) -
COUNT(6)
/*
//
| Is This Answer Correct ? | 23 Yes | 2 No |
Post New Answer View All Answers
how do you define single dimensional array and multidimensional array in your cobol?
Describe the cobol database components?
What is the LINKAGE SECTION used in COBOL?
how do you reference the variable unblock file formats from cobol programs
what is the use of outrecord?
What is the Purpose of Pointer in the string?
Name the divisions, which are available in a cobol program?
Explain the configuration section of a cobol program with examples of syntax.
Mention the guidelines to write a structured cobol program?
Is it possible that the redefines clause has different picture clauses compared to the one it redefined?
i need a small 3d program using inline and outline.
Why would you use find and get rather than to obtain?
How do you get the data to code the BMS macro?
Write a program to explain size error.
Our issue is there seems to be a disconnect, or no link, between our SELECT statement and our SD. We had SELECT SORT-FILE and SELECT SORT-FILE ASSIGN TO SORTWRK. ASSIGN TO SORTWRK1 SORTWRK2 SORTWRK3 SORTWRK4. with SD SORT_FILE RECORD CONTAINS 7833 CHARACTERS. In either case, at run time, the system ignored our SORTWRK# DD statements and allocated 16 sort works with the SORTWK## naming convention. Any ideas why the system does not recognize the connection? We do not even need the SORTWRK DD statements. Thanks