12.1.3 仮想端末の共用
送受信先が同じ仮想端末に対して,複数プログラムで定義した通信記述項を使って通信文を実行すると,複数の画面が生成されます。このとき実行時環境変数を指定することで,一つの仮想端末を複数プログラム間で共用し,送受信できます。
また,-CompatiV3オプションを指定してコンパイルしたプログラムでも同様に,一つの仮想端末を共用できます。
- 〈この項の構成〉
(1) 仮想端末の共用の指定
複数プログラム間で一つの仮想端末を共用して送受信したい場合は,次の実行時環境変数を指定します。
CBLTERMSHAR=YES
この環境変数にYESを指定すると,実行単位中のすべてのプログラムで同一名称の仮想端末を共用できます。指定がない,またはYES以外の文字が指定されている場合は,NOが仮定されます。NOの場合は,送受信先に同一名称の仮想端末を指定しても異なる仮想端末として送受信します(SEND文実行時に複数の画面が生成される)。
(2) 注意事項
-
一つの実行単位ファイル中の通信節を使用するプログラムに対して,-CompatiV3オプションを指定したオブジェクトファイルと未指定のオブジェクトファイルを混在して動作させてはいけません。混在させた場合の動作は保証しません。
-
複数プログラム間で共用した仮想端末に対して送信した画面データを受信するとき,最後に送信したSEND文と同じ通信記述項を使って受信しなければいけません。
-
仮想端末は,一つのCOBOL実行単位中に,複数のプログラム間で共用できます。CALL文で呼び出す実行可能ファイルなど,別のCOBOL実行単位との共用はできません。