次の方法で共有


IMS Connect

IMS Connect プログラミング・モデルは、TCP/IP を使用して情報管理システム (IMS) トランザクションにアクセスできるようにします。 このモデルでは、データの処理に IMS メッセージ キューを使用します。

次の図は、クライアント、既定の IMS リスナー、コンカレント サーバー、メインフレーム トランザクション プログラムの間で発生するワークフローをまとめたものです。 かっこ内の数値は、イベントが発生するおおよその順序を示します。 この図の後に、イベントの詳細な説明を示します。

クライアントが ITOC リスナーに入力データを渡すプロセスを示す画像。
クライアントが ITOC リスナーに入力データを渡し、HWSIMSO0が IMS プログラムへのアクセスを提供し、応答データをクライアントに配信するプロセス

IMS Connect プログラミング モデルの概要ワークフロー図

IMS Connect プログラミング モデルは次のように動作します。

  1. アプリケーションは、コンポーネント サービスまたは .NET Framework で構成された TI コンポーネント内のメソッドを呼び出します。

  2. TI ランタイムは、TI オートメーション プロキシを呼び出します。

  3. アプリケーションが .NET Framework アセンブリの場合、TI オートメーション プロキシは次のようになります。

    1. アセンブリ内の Rread と、TI デザイナーによって以前に作成されたメタデータ。

    2. .NET データ型を COBOL データ型にマップします。

      その後、TI Automation プロキシは次の操作を行います。

    3. 変換ルーチンを呼び出して、アプリケーション・データをメインフレーム COBOL タイプに変換します。

    4. COBOL 宣言またはコピーブックを表すフラット化されたデータ ストリーム バッファーを構築します。

    5. TCP トランスポート コンポーネントにメッセージを渡します。

  4. TI ランタイムは、メインフレーム コンピューターのインターネット プロトコル (IP) アドレスと、IBM によって提供される TCP/IP プロファイル データ セット (hlq.PROFILE.TCPIP) に格納されている IMS Connect のポート アドレスを使用して、HWSIMSO0 または HWSIMSO1 のいずれかに対する初期要求メッセージ (IRM) を IMS Connect に送信します。

    HWSIMSO0およびHWSIMSO1は、TI Automation サーバー (TI .NET Framework アプリケーション) と ITOC の間の要求プロトコルと応答プロトコルを定義する、IBM 提供のホスト Web サーバー (HWS) 出口ルーチンです。 HWS は、IMS 領域とは別の z/OS アドレス・スペースで実行され、IMS 接続のリスナー・サービスを実行します。

  5. IMS Connect 出口ルーチンは、IMS アプリケーション (IMS TCP/IP オープン・トランザクション管理アーキテクチャ (OTMA) 接続 (ITOC) と呼ばれます) を制御します。

  6. TI ランタイム環境は、ITOC 要求ヘッダーを ITOC およびHWSIMSO0に送信します。

  7. HWSIMSO0出口ルーチン:

    • ITOC 要求ヘッダーを検証します

    • TI ランタイム環境からすべての要求データを受信します

    • セキュリティ ルーチンとの通信

    • OTMA プロセスを駆動して IMS データ・ストアに接続する

    • OTMA を介して、IMS メッセージ・キューにメッセージ・セグメントを配置し、取得します。

    • すべての応答データ セグメントを TI ランタイム環境に送信します

    • IMS 内のリカバリー操作を制御します

  8. ITOC は、ITOC ヘッダー情報を読み取り、正しい IMS 領域を見つけ、その IMS 領域内で IMS トランザクションの実行をスケジュールします。 ITOC ヘッダーには、次の情報が含まれている必要があります。

    • ITOC HWS 出口ルーチン ID (デフォルト '*IRMREQ*')

    • IMS データ ストア識別子

    • トランザクション識別子

    • フロー制御情報

    • IBM のリソース・アクセス制御機能 (RACF) セキュリティー資格情報

    • プロトコル制御フラグ

  9. HWSIMSO0は、正しい IMS メッセージ・キューをスケジュールします。

  10. TI ランタイムは、要求データ セグメントを ITOC に送信します。

  11. TI ランタイムが EOM を送信する

  12. IMS 制御領域がメッセージ処理領域 (MPR) に送信する

  13. すべての要求データが IMS メッセージ・キューに入れられた後、トランザクションは実行のためにスケジュールされます。

  14. IMS サーバー・アプリケーション・プログラムは、標準の CBLTDLI Get Unique (GU)、Get Next (GN)、Insert (INSRT) 呼び出しインターフェース・コマンドを使用して要求データを取得し、応答データを IMS メッセージ・キューに入れます。

  15. MPR は TI にデータを返します。 ITOC は EOM-CSMOKY を送信し、次の情報を TI ランタイム環境に返します。

    • mod メッセージを要求する

    • 応答データ セグメント

    • メッセージの終了セグメント

    • CSMOKY セグメント

  16. その後、ITOC および ITOC 出口ルーチンは、メッセージ・キューから応答データを除去し、TI ランタイム環境に戻します。

  17. TI オートメーション プロキシは応答データを受信し、応答を処理します。 TI オートメーション プロキシ:

    1. は、TCP トランスポート コンポーネントからメッセージを受信します。

    2. メッセージバッファーを読み取ります

      アプリケーションが .NET Framework アセンブリの場合、TI オートメーション プロキシは次のようになります。

    3. COBOL データ型を .NET Framework データ型にマップします

    4. は変換ルーチンを呼び出して、COBOL データ型をアプリケーション・データに変換します。

  18. TI ランタイムは、変換されたデータを、メソッドを呼び出した .NET Framework アプリケーションに送り返します。

    TCP/IP 用のメインフレームおよび書き込みサーバー・アプリケーションの構成の詳細については、TCP/IP V3R2 for z/OS: IMS TCP/IP アプリケーション開発者ガイド (IBM ドキュメント #SC31-7186) および IMS Connect Guide and Reference V1R2 (IBM Document #SC27-0946) を参照してください。

    Host Integration Server には、IMS Connect プログラミング モデルを実装する方法を示すサンプル コードが含まれています。 サンプル コードは、 \installation ディレクトリ\SDK\Samples\AppInt にあります。 Visual Studio を起動し、使用するチュートリアルを開き、 Readme の指示に従います。

こちらもご覧ください

トランザクション インテグレーター コンポーネント
データ型を Automation から z/OS COBOL に変換する]
z/OS COBOL から Automation へのデータ・タイプの変換
IMS コンポーネント
TI ランタイム
適切なプログラミング モデルの選択
プログラミング モデル