メインプログラムから呼び出されるログファイルを作成するために、COBOL でサブプログラムを作成しようとしています。サブプログラムを呼び出すたびにログファイルをクリアしたくないので、「拡張を開く」を使用します。問題は、動作しない未知の理由によるもので、プログラムは何もしません。「オープン拡張」を「オープン出力」に変更すると機能しますが、ファイルが毎回上書きされるのは望ましくありません。
IDENTIFICATION DIVISION.
PROGRAM-ID. LOGGER.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT LOGFILE ASSIGN TO "LOGFILE.txt"
ORGANIZATION IS LINE SEQUENTIAL.
DATA DIVISION.
FILE SECTION.
FD LOGFILE.
copy "FDLOGGER.cpy".
WORKING-STORAGE SECTION.
LINKAGE SECTION.
01 LOGFILEBOODSCHAP PIC X(150) value spaces.
Procedure division USING LOGFILEBOODSCHAP.
pgm.
open EXTEND LOGFILE
Move Current-time to TIJD
Move Current-date to DATUM
Move LOGFILEBOODSCHAP to BOODSCHAP
write logrecord
close LOGFILE
exit program
.