Home > リファレンスガイド > ユーティリティ > データマッパーユーティリティ

データマッパーユーティリティ

Magic xpiのデータマッパーユーティリティは、ビジュアルなマッピング デバイスを使用して、異なる形式で異なる送り元のレコードとフィールド間の関連付けることができます。

データマッパーを使用すると、送り先データ要素と送り先データ要素の間の関係をグラフィカルに表現できます。これによって、コードを記述することなくデータを処理する方法jを作成します。

データマッパーユーティリティの[送り元]と[送り先]のプロパティペインで送り元と送り先の書式を定義します。データマッパーは、以下の動作を実行することができます。

Magic xpiは、データマッパーでUnicodeをサポートしています。詳細については、データマッパーでのUnicode使用を参照してください。

XSDに従って、どれがNull値可の要素をマップしたり、Magic xpiにNull値を含めます。

 以下の表は、データマッパーが処理することができるデータのタイプを表示しています。マップの送り元と送り先には任意の組み合わせを指定できます。

送り元

送り先

XML …… 指定されたXMLスキーマ定義(XSD)に基づいた有効なXMLを指定する必要があります。

XML …… 指定されたXMLスキーマ定義(XSD)に基づいてXML出力ファイルが作成されます。

データベース (Select ステートメント):

 …… データマッパーは、Oracle、MSSQL、Pervasive、およびDB2400をサポートしています。その他のデータベースはODBCプロトコルを使用してサポートされます。データベース情報を使用するには、[設定]ダイアログボックスの[リソース]セクションの[データベース]セクションでデータベースを定義する必要があります。

データベース (Insert/Update/Delete ステートメント):  …… データマッパーは、Oracle、MSSQL、Pervasive、およびDB2400をサポートしています。その他のデータベースはODBCプロトコルを使用してサポートされます。データベース情報を使用するには、[設定]ダイアログボックスの[リソース]セクションの[データベース]セクションでデータベースを定義する必要があります。

フラットファイル …… 指定された構造に基づいてフラットファイルを解析し、フィールドのマッピングを可能にします。

フラットファイル …… 指定された構造に基づいてフラットファイルを作成したりデータを追加します。

変数 …… 現在のフローのためにグローバル、コンテキスト、ビジネスプロセス、およびフロー変数を選択することができます。

変数 …… 現在のフローのためにグローバル、コンテキスト、ビジネスプロセス、およびフロー変数を選択することができます。

ODS …… ODSリポジトリからODSエントリを選択します。ODS配列もサポートしています。1つのODSエントリのみ選択できます。

ODS …… ODSリポジトリからODSエントリを選択します。ODS配列もサポートしています。1つのODSエントリのみ選択できます。

UDS …… UDSリポジトリからUDSエントリを選択します。

UDS …… UDSリポジトリからUDSエントリを選択します。

フロー呼出 …… 送り元内の各イベントに対するフローを呼び出します。引数は送り先のフローに渡されます。これらの引数はすべてのタイプ(フロー、コンテキスト、グローバルそしてビジネスプロセス)で定義された変数を含めることができます。

テンプレート …… HTMLテンプレートファイルに基づいて新規HTMLファイルを作成します。

JSON …… 開発中は、Magic xpiはJSONスキーマを解析し、すべてのデータタイプと制約に基づいてその構造を表示します。実行中は、JSONファイルは妥当性が決定され、マッピングが実行されます。検証処理において不適当な組合せがある場合、エラーが発生します。

JSON …… 開発中は、Magic xpiはJSONスキーマを解析し、すべてのデータタイプと制約に基づいてその構造を表示します。実行中は、JSONファイルはデータマッパーで作成され内部で検証されます。検証処理において不適当な組合せがある場合、エラーが発生します。このエラーは、 C.sys.LastErrorInfoと C.sys.ErrorDescriptionのシステム変数に記録されます。しかしエラーがある場合は、すでに作成されているのでJSONファイルは残ります。

データマッパーは複数の送り元と複数の送り先をサポートします。複数の送り元を1つの送り先にマッピングしたり、1つの送り元を複数の送り先にマッピングすることができます。複数の送り元を複数の送り先にマッピングすることもできます。有効な送り元のデータタイプを有効な送り先のタイプにマッピングすることができます。

データマッパーで1つの送り元と複数の送り先を使用する時に、実際のデータベース処理(Insertなど)は、送り先の順番に関わらず実行される最後の処理になります。親子関係を持つ2つのテーブルを使用している場合、問題があります。代わりに、別の送り元/送り先のペアを使用してください。最初はデータベース処理そして2番目は、フロー呼出にする必要があります。

データマッパーは独自のフローステップとして有効ですが、コンポーネントの設定中のインタフェースタイプとしてXMLを選択すると、自動的にまた呼び出されます。

さらに、Magic xpiは、リポジトリを使用してデータ(文字列から文字列へ)を変換します。例えば、データコンバータによって発生するたびに、文字列の"USD"を"$"に変換することができます。[データコンバータ]リポジトリは、変換テーブルの定義を維持していて、送り元と送り先の文字列をファイルに格納します。ソリューションエクスプローラで[データコンバータ]リポジトリをダブルクリックすることでこのファイルにアクセスすることができます。[データコンバータ]タブは、メインのペインで開きます。Magic xpiサーバが開始されると、[データコンバータ]リポジトリがファイルから読み込まれます。

  • Magic xpiは、必須フィールドを処理しません。マッピングまたは式を定義することによって、必須フィールドに値が設定されていることを確認してください。

  • ほとんどの場合、データマッパーでは、送り元タイプがデータベースに設定され、送り先タイプがデータベース以外の場合、トランザクションは開きません。(送り先タイプがデータベースに設定される場合、トランザクションが開始されます。)唯一の例外は、送り元タイプがDB2/400データベースで、選択されたフィールドのタイプの1つがBLOBの場合です。

関連トピック