CICSplex は、CICS® 相互通信機能を使用してリンクされた複数の CICS 領域で構成されます。CICS 機能 (動的トランザクション・ルーティングとも呼ばれる) は、トランザクションを処理するためのリソースがある任意の領域への端末からのトランザクションを動的に経路指定することにより、ロード・バランシングをサポートします。
相互トランザクション・アフィニティーは、複数の CICS トランザクションが相互に情報を渡し、トランザクションを同じ CICS 領域で実行する必要がある場合に発生します。相互トランザクション・アフィニティーが存在する場合、トランザクションを CICS に対して定義して、トランザクションが同じ領域に経路指定されるようにする必要があります。
以下のトピックでは、EGL を使用して生成される CICS プログラムでのトランザクション・ルーティングの考慮事項について説明します。トランザクション・ルーティングの詳細については、「Dynamic Routing in a CICSplex」(SC33-1012) を参照してください。
セグメント化プログラムは、一時ストレージ・キュー (作業データベース) を使用して、converse ステートメントまたは show ステートメントの実行中のプログラム会話の状態を保存します。 会話のすべてのセグメントが同じ一時ストレージ・キューにアクセスでき、継続して同じ端末 ID を使用する必要があります。
プログラムは、CICS 環境で共用 EGL DataTables を更新できます。共用 DataTable は、CICS GETMAIN を使用して取得されるメモリー内に保存されます。すべての更新には、同じ領域で実行しているプログラムのみがアクセスできます。 共用 DataTable を使用して情報を渡すことに依存するすべてのトランザクションは、同じ領域に経路指定される必要があります。
トランザクション・ルーティングでの一時ストレージ・キューの使用の詳細については、CICS マニュアルを参照してください。
印刷出力を一時データ・キューに経路指定できます。プログラムは、印刷出力を一時ストレージ・キューに蓄積します。出力が完了すると、プログラムは出力を一時データ・キューにコピーします。ENQ/DEQ を使用して、同じシステム内の複数のトランザクションからの出力が混在しないようにします。
ENQ/DEQ は 1 つの領域内でのみ有効であるため、キューをローカル・キューとして定義して、複数の領域からの出力が混在しないようにします。
また、FZETPRT 端末印刷プログラムを起動するキューが定義されている場合は、そのキューがある領域内のローカル・トランザクションとして FZETPRT 用のトランザクションを定義します。
Rational® COBOL Runtime からのエラー・メッセージを、エラー宛先キューと呼ばれる一時データ・キューに送信することができます。EGL プログラムが実行される可能性がある各領域に対してキューをローカル・キューとして定義して、単一のエラーに関連したメッセージが別の領域で同時に発生する別のエラーに関連したメッセージと混在しないようにします。
診断制御ユーティリティーを使用して指定できるオプションの 1 つは、トランザクションに対して実行単位エラーが検出されると必ずそのトランザクションを使用不可にすることです。
使用不可アクションは CICS SET 機能を使用して実装されており、そのエラーが発生した領域に対してのみ有効です。
Rational COBOL Runtime CICS のユーティリティーは、領域アフィニティーを持つ機能を実行します。したがって、トランザクションが、ユーザー ID、LU 名、または代替トランザクション名に基づいて、希望する領域に経路指定されることを確認する必要があります。次の表に、ユーティリティー、デフォルトのトランザクション ID、および機能の説明をリストします。
| ユーティリティー | デフォルト ID | 機能の説明 |
|---|---|---|
| CICS Utilities Menu | ELAM | 他のユーティリティーを選択するためのメニュー (トレースを除く)。 |
| New Copy | ELAN | 領域にプログラム、ライブラリー、サービス、FormGroup、または DataTable の新規コピーをロードします。 |
| Diagnostic Message Print | ELAU | 領域に関連付けられたエラー・メッセージ・キューを印刷します。 |
| Diagnostic Control Options | ELAC | Rational COBOL Runtime のエラー・レポート・オプションを設定します。オプション・ファイル (RDO FILE 名 ELACFIL) が各領域に対してローカルとして定義されている場合、領域に依存します。ELACFIL がファイル所有領域を介してアクセスされる共用ファイルとして定義されている場合、領域に依存しません。 |
| Trace | ELAZ | このユーティリティーによって設定されるトレース・オプションは、領域内の CICS GETMAIN を使用して取得されるメモリーに保存され、ELAZ トランザクションが実行された領域でのみ有効です。 |