EGL を使用すると、MPP または BMP 領域を問わず IMS™ で実行されるプログラムを
作成することができます。プログラムは、FastPath または非 FastPath、会話型
または非会話型のいずれでもかまいません。
- IMS/VS の textUI プログラムを生成する場合、EGL ランタイムが、I/O PCB を
必要とするメッセージ・キューの対話の詳細を処理します。代替 PCB を
使用して、親端末以外の宛先に出力を送信することもできます。
端末と
対話するには、converse 文を使用します。これは、converse 文の
後の文を処理することによって、テキスト書式を表示して、ユーザーの
入力に応答します。ランタイムの振る舞いの概要については、
『textUI プログラムのセグメンテーション』および特に
『CICS® または IMS のセグメント化されたプログラムの振る舞い』
を参照してください。
converse 文の使用は比較的
簡単ですが、show 文を使用して同じ
プログラムの最初に戻ることによって、より良いパフォーマンスが得られます。
show 文を使用すると、再呼び出しされた
プログラムが最初の行から開始され、そのプログラムが最初に呼び出されたのか、
ユーザー・コードの対話の中で呼び出されたのかをコードによって分析しなければならないため、
より複雑な設計が必要となります。
- IMS/VS の基本メインプログラムを生成する場合、テキスト書式は関係しませんが、
入力 IMS メッセージ・キューからの入力を受け入れる
ことができます。メッセージ・キューの対話の詳細は、キューに関連付けるシリアル・
レコードにメッセージを読み込むループをコーディングすることによって処理します。
代替 PCB を使用して、出力を送信することもできます。
非会話型の EGL 生成プログラムが、フォーム transfer to a transaction の transfer 文を
使用して、EGL 生成の基本プログラムに制御を移動する場合、および文が
レコードも移動する場合は、他の環境のように、受け取り先プログラムの入力レコードを
初期化するために、移動されたレコードは使用されません。代わりに、
受け取り先プログラムは、メッセージ・キューから移動したレコードを読み取る
必要があります。
- IMS BMP の基本メインプログラムを生成する場合は、入力 IMS メッセージ・
キューからの入力を受け入れることができます。詳細は、そのキューに関連付ける
シリアル・レコードから読み込むループをコーディングすることによって処理します。
代替 PCB を使用して出力を送信して、シリアル・レコードおよび GSAM PCB レコードを
使用して GSAM ファイルと対話することもできます。
- IMS/VS または IMS BMP の呼び出し先プログラムを生成する場合は、
メッセージ・キューから読み取りを行いません。ただし、代替 PCB を使用して
出力を送信することができ、また IMS BMP の
場合は、シリアル・レコードおよび GSAM PCB レコードを使用して、GSAM ファイルと
対話することができます。
IMS 制御ブロックとの対話の仕組みについて
詳しくは、『ランタイム PCB および PSB の EGL サポート』を参照してください。