Files
cobol-java-v3/test-data/cobol/HINA004.cbl
T

55 lines
1.8 KiB
COBOL

* HINA004 - 編集出力(GETPUT)
>>SOURCE FORMAT IS FREE
*
* 期待: 2ファイル, 1 IF, 5 段落
IDENTIFICATION DIVISION.
PROGRAM-ID. HINA004.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT IN-FILE ASSIGN TO "IN.DAT"
ORGANIZATION IS LINE SEQUENTIAL.
SELECT OUT-FILE ASSIGN TO "OUT.DAT"
ORGANIZATION IS LINE SEQUENTIAL.
DATA DIVISION.
FILE SECTION.
FD IN-FILE.
01 IN-REC.
05 IN-ID PIC X(05).
05 IN-NAME PIC X(20).
05 IN-AMT PIC 9(07)V99.
FD OUT-FILE.
01 OUT-REC PIC X(80).
WORKING-STORAGE SECTION.
01 WS-EOF PIC X VALUE 'N'.
88 WS-EOF-Y VALUE 'Y'.
01 WS-HEADER PIC X(80).
01 WS-DETAIL PIC X(80).
01 WS-LINE-CNT PIC 9(02).
PROCEDURE DIVISION.
0000-MAIN.
OPEN INPUT IN-FILE.
OPEN OUTPUT OUT-FILE.
MOVE "ID NAME AMOUNT" TO WS-HEADER.
WRITE OUT-REC FROM WS-HEADER.
MOVE 0 TO WS-LINE-CNT.
PERFORM 1000-READ.
PERFORM 2000-PROCESS UNTIL WS-EOF-Y.
CLOSE IN-FILE OUT-FILE.
STOP RUN.
1000-READ.
READ IN-FILE INTO IN-REC
AT END MOVE 'Y' TO WS-EOF-Y.
2000-PROCESS.
IF WS-LINE-CNT > 50 THEN
MOVE SPACES TO WS-DETAIL
STRING "--- PAGE BREAK ---"
DELIMITED BY SIZE INTO WS-DETAIL
WRITE OUT-REC FROM WS-DETAIL
MOVE 0 TO WS-LINE-CNT.
STRING IN-ID IN-NAME IN-AMT DELIMITED BY SIZE
INTO WS-DETAIL.
WRITE OUT-REC FROM WS-DETAIL.
ADD 1 TO WS-LINE-CNT.
PERFORM 1000-READ.