COBOL2002 ユーザーズガイド
通信節による画面機能を使用する場合,画面はXMAP3のドロー(パネル定義)機能を利用して定義します。ドロー(パネル定義)機能については,次に示すマニュアルを参照してください。
画面データを送受信したり画面を閉じたりするには,原始プログラム中のデータ部通信記述項のFOR句で"I-O WS"を指定し,次に示す文を使用します。
表12-1 画面データの送受信で使用する文
使用する文 | 処理 |
---|---|
SEND文 | ディスプレイに画面データを送信し,応答の完了を待たないで非同期にプログラムを続行する。
|
RECEIVE文 | NO REPLY指定のないSEND文で受信したデータを受け取る。 |
TRANSCEIVE文 | ディスプレイに画面データを送信し,受信した画面データを受け取る。 |
DISABLE文 | ディスプレイに出力された画面データを消去する。 |
画面データの表示モードには次の2種類のモードがあります。
SEND文またはTRANSCEIVE文では,ドロー(パネル定義)機能で画面(パネル)定義時に指定した表示モードで画面データを表示します。ただし,開かれていない画面データの送受信先に対してSEND文またはTRANSCEIVE文を初めて実行する場合,上書き(WRITE)モードを指定してはなりません。
ドロー(パネル定義)機能で,画面(パネル)定義時にこのシステムに任せる指定をした場合,次の規則に従って画面データが表示されます。
プログラム実行時にカーソルの位置を変更するときは,原始プログラム中で論理マップとして展開したカーソルフィールドに値を設定します。
データ有無コードとは,論理項目に値を設定しているかどうかを区別するためのコードで,1バイトのコードX'00'〜X'FF'で指定します。
データ有無コードには,原始プログラム中の通信記述項のDATA ABSENCE CODE句で指定したデータ名に設定した値が使われます。
DATA ABSENCE CODE句を指定したときは,プログラム中の通信記述項ごとの最初の通信文を実行する前に値を必ず設定しておく必要があります。データ名に値を設定しなかった場合の動作は保証しません。また,通信文の実行後に値を変更してはなりません。
続行できない異常な状態が通信文で発生すると,エラーメッセージが出力されます。通信記述項にSTATUS KEY句の指定があれば,通信文の実行状態を示す5けたのコードがこの句で指定したデータ名に設定され,処理が続行されます。
STATUS KEY句がないときに続行できないエラーが発生すると,プログラムは異常終了します。
STATUS KEY句のデータ名に設定されるコードについては,マニュアル「COBOL2002 言語 拡張仕様編 11.1.1 通信記述項(CD)(通信節による画面機能)」を参照してください。
画面機能では,送受信先を指定することで,ネットワーク上に接続されたディスプレイに画面データを送受信できます。送受信先の指定方法について,次に示します。
画面データの送受信先は,通信記述項でのSYMBOLIC TERMINAL句の指定の有無と,環境変数の指定の有無によって次のように決定されます。
条件 | SYMBOLIC TERMINAL句でのデータ名の指定 | ||
---|---|---|---|
あり | なし | ||
環境変数の指定 | あり | 環境変数CBLTERM_xxxで指定したディスプレイ ただし,データ名に設定した内容の先頭1バイトが空白文字(X'20')の場合は,環境変数CBLTERMIDで指定したディスプレイ |
環境変数CBLTERMIDで指定したディスプレイ |
なし | データ名で指定した仮想端末 ただし,データ名に設定した内容の先頭1バイトが空白文字(X'20')の場合は,XMAP3のセットアップの値(仮定値)※ |
XMAP3のセットアップの値(仮定値)※ |
送受信先を設定するための環境変数には次の2種類があります。
CBLTERM_xxx=ディスプレイの仮想端末名
CBLTERMID=ディスプレイの仮想端末名
通信記述項のSYMBOLIC TERMINAL句のデータ名に環境変数名または仮想端末名を指定することで,画面データの送受信先を指定できます。
ディスプレイに対して画面データを送受信する場合,SEND文(NO REPLY指定なし)の前に通信記述項のMAP NAME句のデータ名に物理マップ名を指定し,画面データを送受信します。RECEIVE文はその物理マップ名に対して画面データを受信するため,RECEIVE文で物理マップ名は指定しません。
複数の仮想端末に送信した画面データを受信するとき,それぞれの最後に送信したSEND文で指定した物理マップが,RECEIVE文の物理マップとなります。
All Rights Reserved. Copyright (C) 2013, 2016, Hitachi, Ltd.
All Rights Reserved. Copyright (C) 2002, 2011, Microsoft Corporation.