COBOL2002 ユーザーズガイド


16.3.2 GUIモード

GUIモードでは,ACCEPT/DISPLAY文での入出力先や実行時メッセージの出力先が,COBOL2002が出力するコンソールウィンドウとなります。GUIモードでのCOBOLプログラムの実行例を,次に示します。

(実行するプログラム)
       IDENTIFICATION DIVISION.
       PROGRAM-ID. TEST1.
 
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT TXT-FILE ASSIGN TO FILE-NAME
                       ORGANIZATION IS LINE SEQUENTIAL.
       SELECT DMY-FILE ASSIGN TO SYS001
                       ORGANIZATION IS LINE SEQUENTIAL.
       DATA DIVISION.
       FILE SECTION.
       FD TXT-FILE.
       01 TXT-REC PIC X(40).
       FD DMY-FILE.
       01 DMY-REC PIC X(40).
       WORKING-STORAGE SECTION.
       01 FILE-NAME PIC X(40).
 
       PROCEDURE DIVISION.
           DISPLAY '--- プログラムのテストを開始します ---'. …1.
           DISPLAY '--- ファイル名を入力してください   ---'. …1.
           ACCEPT FILE-NAME.                                 …2.
 
           OPEN OUTPUT TXT-FILE.
           WRITE TXT-REC.
           CLOSE TXT-FILE.
 
           OPEN INPUT DMY-FILE.                              …3.
           READ DMY-FILE.
           CLOSE DMY-FILE.
 
           EXIT PROGRAM.
 
       END PROGRAM TEST1.
(実行画面)

[図データ]

[図データ]

  1. DISPLAY文によるメッセージの出力です。コンソールウィンドウに出力されます。

  2. ACCEPT文によるファイル名の入力です。入力用のダイアログボックスから入力します。ダイアログボックスに入力した値は,DISPLAY文の出力結果と同様に,コンソールウィンドウに出力されます。

  3. ファイルに対応する環境変数未設定による実行時メッセージです。実行時メッセージも,コンソールウィンドウに出力されます。

コンソールウィンドウ

GUIモードでプログラムを実行する場合,次のようなときにCOBOLコンソールウィンドウが出力されます。

  • 実行単位で最初のDISPLAY文が実行された。このとき,環境変数CBL_SYSOUTまたはCBL_SYSPUNCHでファイルが割り当てられていない。

  • 実行単位で最初のACCEPT文が実行された。このとき,環境変数CBL_SYSINまたはCBL_SYSSTDでファイルが割り当てられていない。

  • 実行時エラーが発生した。このとき,環境変数CBL_SYSERRでファイルが割り当てられていない。

COBOLコンソールウィンドウのステータスバーには,プログラムの実行状態が次のように表示されます。

  • COBOLプログラムが実行中の場合:「実行中です」

  • STOP RUN文が実行された場合:「実行が終了しました」

  • 実行時エラーが発生した場合:「実行時エラーが発生しました」

コンソールウィンドウからプログラムを終了する方法を,次に示します。

  • ステータスバーに「実行が終了しました」または「実行時エラーが発生しました」の表示があるとき

    コンソールウィンドウのシステムメニューから[閉じる]を選ぶとプロセスが終了します。

  • ステータスバーに「実行中です」の表示があるとき

    コンソールウィンドウのシステムメニューから[閉じる]を選ぶと,次のメッセージボックスが出力されます。ここで[OK]ボタンを選ぶとプロセスが終了します。

    [図データ]