tinycobol/test.code/t19/test19a.cob

105 lines
2.6 KiB
COBOL

IDENTIFICATION DIVISION.
PROGRAM-ID. TEST19A.
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
*SPECIAL-NAMES.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT BBB ASSIGN TO WS-BBB
ORGANIZATION IS SEQUENTIAL
ACCESS MODE IS SEQUENTIAL
FILE STATUS IS FS-BBB.
SELECT AAA ASSIGN TO WS-AAA
ORGANIZATION IS SEQUENTIAL
ACCESS MODE IS SEQUENTIAL
FILE STATUS IS FS-AAA.
SELECT CCC ASSIGN TO WS-CCC
ORGANIZATION IS LINE SEQUENTIAL
ACCESS MODE IS SEQUENTIAL
FILE STATUS IS FS-CCC.
DATA DIVISION.
FILE SECTION.
FD CCC
LABEL RECORD IS STANDARD.
01 REC-CCC.
03 REC-CCC-P-IND PIC 9(03).
03 REC-CCC-DESCRIPTION PIC X(92).
FD BBB
LABEL RECORD IS STANDARD.
01 REC-BBB.
03 REC-BBB-P-IND PIC 9(03).
03 REC-BBB-DESCRIPTION PIC X(77).
FD AAA
LABEL RECORD IS STANDARD.
01 REC-AAA.
03 REC-AAA-P-IND PIC 9(03).
03 REC-AAA-DESCRIPTION PIC X(63) VALUE "AAAAAAAAAAAAA".
WORKING-STORAGE SECTION.
01 WS-AAA PIC X(25) VALUE "test.out.0.txt".
01 WS-BBB PIC X(25) VALUE "test.out.1.txt".
01 WS-CCC PIC X(25) VALUE "test.out.2.txt".
01 FS-AAA PIC 9(02).
01 FS-BBB PIC 9(02).
01 FS-CCC PIC 9(02).
01 W-COUNTER PIC 9(08).
01 REM PIC 9(5).
01 W01-SWITCHES PIC X(03).
88 W01-END VALUE "YES".
88 W01-MORE VALUE "NO ".
* 01 W01-SWITCHES PIC 9.
* 88 W01-END VALUE 1.
* 88 W01-MORE VALUE 0.
PROCEDURE DIVISION.
MAIN SECTION.
OPEN OUTPUT AAA.
MOVE ZERO TO W-COUNTER.
PERFORM WRITE-IT 9 TIMES.
CLOSE AAA.
* DISPLAY "Write file AAA finished".
OPEN INPUT AAA.
OPEN OUTPUT BBB.
OPEN OUTPUT CCC.
MOVE "NO" TO W01-SWITCHES.
* MOVE 0 TO W01-SWITCHES.
MOVE 0 TO W-COUNTER.
PERFORM READ-WRITE-IT UNTIL W01-END.
CLOSE AAA.
CLOSE BBB.
CLOSE CCC.
STOP RUN.
WRITE-IT.
ADD 1 TO W-COUNTER.
MOVE W-COUNTER TO REC-AAA-P-IND.
WRITE REC-AAA.
* DISPLAY "Trace: WRITE-IT counter" W-COUNTER.
READ-WRITE-IT.
READ AAA AT END
MOVE "YES" TO W01-SWITCHES.
* MOVE 1 TO W01-SWITCHES.
* DISPLAY "Trace: READ-WRITE-IT W01-SWITCHES=" W01-SWITCHES ":".
ADD 1 TO W-COUNTER
IF W01-MORE
MOVE REC-AAA-P-IND TO REC-BBB-P-IND
MOVE "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB" TO REC-BBB-DESCRIPTION
WRITE REC-BBB
MOVE REC-AAA-P-IND TO REC-CCC-P-IND
MOVE "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC" TO REC-CCC-DESCRIPTION
WRITE REC-CCC.
* DISPLAY "Trace: READ-WRITE-IT counter" W-COUNTER.