次の方法で共有


データ型の変換

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

TI Project を使用して、各 Automation データ・タイプを、ホスト TP で使用される各 COBOL または RPG データ・タイプに関連付けます。 TI は、標準の自動化データ・タイプと 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 をインポートしたり、メソッド記述を手動で入力して自動化メソッドを作成したりできます。 COBOL または RPG をインポートする場合、サポートされている各 COBOL データ・タイプにはデフォルトの自動化タイプがあります。 メソッドを手動で作成すると、各 Automation データ型に既定のホスト データ型が関連付けられます。

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

このセクションにて