CICS コンパイラー・オプションを使用して COBOL プログラムをコンパイルすると、COBOL コンパイラーは組み込みの CICS 変換プログラムと連動して、ソース・プログラム内のネイティブ COBOL ステートメントと組み込みの CICS ステートメントの両方を処理します。
コンパイラーは、CICS ステートメントを検出したとき、およびソース・プログラム内の重要な地点で、コンパイラーは、組み込みの CICS 変換プログラムとインターフェースをとります。変換プログラムは適切な処置を行ってから、通常は、生成するネイティブ言語ステートメントを指示してコンパイラーに制御を戻します。
組み込みの CICS ステートメントは、分離型の変換も引き続き可能ですが、組み込みの CICS 変換プログラムを使用することを推奨します。
分離型の変換プログラムを使用する場合に適用される一部の制約は、組み込みの変換プログラムを使用する場合には適用されません。組み込みの変換プログラムを使用することにはいくつかの利点があります。
- デバッグ・ツールを使用して、分離型の CICS 変換プログラムによって提供される拡張ソースではなく、元のソースをデバッグすることができます。
- コピーブック内の EXEC CICS ステートメントや EXEC DLI ステートメントを個別に変換する必要がありません。
- 変換済みで未コンパイル・バージョンのソース・プログラムに対応する中間データ・セットが不要です。
- 出力リストは 2 つではなく 1 つだけ作成されます。
- EXEC CICS が含まれているネストされたプログラムの使用が簡単です。最外部のプログラムの GLOBAL 属性を使用して DFHCOMMAREA および DFHEIBLK が生成されます。ネストされたプログラムの呼び出し時にこれらを引数として指定する必要はなく、ネストされたプログラムの PROCEDURE DIVISION ヘッダーの USING 句で指定する必要もありません。
- EXEC CICS ステートメントが含まれているネストされたプログラムを個別のファイルに保管し、COPY ステートメントを使用して、それらのネストされたプログラムを組み込むことができます。
- REPLACE ステートメントを EXEC CICS ステートメントに影響させることができます。
- CICS ステートメントが含まれているプログラムをバッチでコンパイルすることができます。
- CICS 制御ブロックの 2 進数フィールドは BINARY ではなく COMP-5 の形式で生成されるようになったので、TRUNC コンパイラー・オプションの設定との依存関係がありません。CICS プログラムの TRUNC については、アプリケーション・ロジックおよびユーザー定義の 2 進数フィールドの使用に関する要件に従っている限り、任意の設定値を使用することができます。