データ型の変換

トランザクション インテグレーター (TI) ランタイム環境では、ホストベースの COBOL またはレポート プログラム ジェネレーター (RPG) データ型と、Visual Basic のような Windows ベースのプログラミング言語で使用される COM ベースの Automation データ型の間で、データ型が自動的に変換されます。 自動変換は、TI コンポーネント (タイプ ライブラリ) を設計および作成するときに TI プロジェクトで定義した情報に基づいています。 この情報は TI コンポーネントと共に格納され、TI ランタイムによって使用され、COM ベースまたは によって理解可能な表現からメソッドのパラメーターを変換します。ホスト トランザクション プログラム (TP) で理解できる表現への NET ベースのプログラミング言語。

TI Project を使用して、各 Automation データ型をホスト TP で使用される各 COBOL または RPG データ型に関連付けます。 TI では、標準の Automation データ型と COBOL または RPG データ型の間の既定のマッピングが提供されます。 既定のマッピングを受け入れるか、TI でサポートされている他のマッピングで既定値をオーバーライドできます。 TI プロジェクトは、変換マップを TI コンポーネント タイプ ライブラリ (.tlb) ファイルに格納します。 この変換マップは、次の場合に使用されます。

  • TP と TI コンポーネントの間を移動するデータを処理します。

  • TI コンポーネントを TP に変換します (ホスト定義をエクスポートします)。

  • TP を TI コンポーネントに変換します (ホスト定義をインポートします)。

    メソッド呼び出しで使用されるパラメーターが厳密に型指定されていない場合、TI ランタイム環境は、受け取ったデータ型を想定したデータ型に強制変換しようとします。 強制が成功すると、呼び出しが続行されます。 失敗した場合は、エラーが返されます。

    実行時に、クライアント アプリケーションが TI Automation インターフェイスを使用して TI Automation サーバーのメソッドを呼び出すと、TI ランタイム環境では変換マップを使用して、メインフレーム TP に送信される入力/出力パラメーターの実際のデータ変換を処理します。 TI が Microsoft® Windows® データを変換した後、TI はメソッド呼び出しをホスト システム APPC/LU 6.2 または TCP/IP メッセージとして再フォーマットします。 次に、TI は Microsoft Host Integration Server SNA または TCP/IP 接続を使用して、メッセージをメインフレームに転送します。 メインフレーム TP が入出力パラメーターを返すと、TI は Windows に戻るためのメッセージを再フォーマットし、ホスト データを Windows データに変換し、戻り値とパラメーターをクライアント アプリケーションに返します。

    リモート環境 (RE) を定義したときに TI Manager で行った言語またはコード ページの選択によって、UNICODE (オートメーション側) から拡張バイナリ コード 10 進交換コード (EBCDIC) (メインフレーム側) への変換に使用されるコード ページが決まります。 TI Manager で RE を作成する場合は、その言語の既定のコード ページを受け入れる言語を選択するか、特定のコード ページを選択します。

    異なるターゲット コード ページに変換する必要がある場合 (たとえば、異なる国または地域のメインフレームをターゲットとする場合)、TI はロケールの使用を必要とする変換をサポートしていないため、ターゲットごとに RE を設定する必要があります。

    TI Project を使用して COBOL または RPG をインポートしたり、手動でメソッドの説明を入力して Automation メソッドを作成したりできます。 COBOL または RPG をインポートする場合、サポートされている各 COBOL データ型には、既定の Automation 型があります。 メソッドを手動で作成すると、各 Automation データ型に既定のホスト データ型が関連付けられます。

    既定の Automation データ型を使用しない場合は、TI Project を使用して Automation データ型を手動で変更できます。 新しい Automation タイプが既存のホスト・データ・タイプと互換性がある場合、既存の COBOL または RPG データ・タイプは変更されません。 互換性がない場合は、ホスト データ型が変更され、メインフレーム プログラムに影響します。

このセクションの内容