IDENTIFICATION DIVISION. PROGRAM-ID. TEST31. ENVIRONMENT DIVISION. INPUT-OUTPUT SECTION. FILE-CONTROL. SELECT PHONE-FILE ASSIGN TO "phone.dat" ORGANIZATION IS SEQUENTIAL FILE STATUS IS W01-STATUS. DATA DIVISION. FILE SECTION. FD PHONE-FILE LABEL RECORDS ARE STANDARD RECORD IS VARYING IN SIZE FROM 10 TO 60 CHARACTERS DEPENDING ON RECORD-LENGTH. 01 PHONE-RECORD PIC X(60). 01 PHONE-RECORD-10 PIC X(10). 01 PHONE-RECORD-20 PIC X(20). WORKING-STORAGE SECTION. 01 RECORD-LENGTH PIC 999. 01 W01-STATUS PIC XX. 01 W01-CNT PIC 999. PROCEDURE DIVISION. MAIN-LOGIC SECTION. PROGRAM-BEGIN. OPEN OUTPUT PHONE-FILE. PERFORM CREATE-FILE VARYING W01-CNT FROM 1 BY 1 UNTIL W01-CNT > 25. CLOSE PHONE-FILE. MOVE ZEROES TO W01-STATUS. OPEN INPUT PHONE-FILE. IF W01-STATUS NOT = "00" DISPLAY "ERROR IN OPENING FILE" STOP RUN. LOOP. MOVE SPACES TO PHONE-RECORD PHONE-RECORD-10 PHONE-RECORD-20. READ PHONE-FILE. IF W01-STATUS NOT = "00" DISPLAY "ERROR IN READING RECORD W01-STATUS=" W01-STATUS STOP RUN. * DISPLAY PHONE-RECORD. * DISPLAY RECORD-LENGTH. IF RECORD-LENGTH < 11 THEN DISPLAY "PHONE-RECORD-10=" PHONE-RECORD-10 ": RECORD-LENGTH=" RECORD-LENGTH ELSE IF RECORD-LENGTH < 21 THEN DISPLAY "PHONE-RECORD-20=" PHONE-RECORD-20 ": RECORD-LENGTH=" RECORD-LENGTH ELSE DISPLAY "PHONE-RECORD =" PHONE-RECORD ": RECORD-LENGTH=" RECORD-LENGTH END-IF END-IF. GO TO LOOP. CLOSE PHONE-FILE. STOP RUN. CREATE-FILE SECTION. AA. * MOVE W01-CNT TO RECORD-LENGTH. MOVE 60 TO RECORD-LENGTH. MOVE ALL "A" TO PHONE-RECORD. WRITE PHONE-RECORD. MOVE 10 TO RECORD-LENGTH. MOVE ALL "B" TO PHONE-RECORD-10. WRITE PHONE-RECORD-10. MOVE 20 TO RECORD-LENGTH. MOVE ALL "C" TO PHONE-RECORD-20. WRITE PHONE-RECORD-20. EXIT.