cobolのコントロールブレイク
趣味の一環としてcobolのファイル入出力プログラムを勉強しているのですが、
リング構造を利用したコントロールブレイク機能の実装で躓いてしまいました。
知恵をお貸しいただければ幸いです。
ソースコードここから
IDENTIFICATION DIVISION.
PROGRAM-ID. BREAKDV1.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT INF ASSIGN TO "C:\cobol\sample.cbl" STATUS FST.
SELECT OUF ASSIGN TO "C:\cobol\data.txt".
DATA DIVISION.
FILE SECTION.
FD INF.
01 F1R PIC X(72).
WORKING-STORAGE SECTION.
01 INKEY PIC 9(01).
01 SAVKEY PIC 9(01).
01 FST PIC X(02).
PROCEDURE DIVISION.
ACCEPT INF
OPEN INPUT INF OUTPUT OUF
PERFORM 読込処理 THRU 読込出口
PERFORM UNTIL INKEY = HIGH-VALUE
MOVE SAVKEY TO INKEY
PERFORM UNTIL INKEY NOT = SAVKEY
PERFORM 同一処理 THRU 同一出口
PERFORM 読込処理 THRU 読込出口
END-PERFORM
PERFORM 合計処理 THRU 合計出口
END-PERFORM
PERFORM 総計処理 THRU 総計出口
CLOSE INF OUF
STOP RUN.
同一処理. DISPLAY "SAME"
WRITE F1R
DISPLAY F1R
同一出口. EXIT.
合計処理. DISPLAY "TOTAL"
合計出口. EXIT.
総計処理. DISPLAY "END"
総計出口. EXIT.
読込処理. PERFORM UNTIL FST NOT "00"
READ INF
END
MOVE HIGH-VALUE TO INKEY
NOT END
CONTINUE
END-READ
END-PERFORM
読込出口. EXIT.
ソースコードここまで(処理内容は仮のものです)
参考文献ではこのような組み方でよいはずなのですが、コンパイルした際に
BREAKDV1.cbl:19: Error: syntax error, unexpected "end of file"
とエラーが発生してしまいました。
このエラーを解消する方法をお教え下さい。
開発環境:
Windows7SP1+MinGW32、サクラエディタ
お礼
たくさんのご指摘ありがとうございました。 今後の参考にしたいと思います。