uCosminexus Interschema ユーザーズガイド
この節では,FDLエディタで定義した入力データのフォーマットと出力データのフォーマットのコンポーネント間を対応付けるマッピングについて説明します。
コンポーネントをドラッグ&ドロップしマッピングして,コンポーネント間を対応付ける式をMDLエディタ上で定義します。なお,この式を「マップ式」と呼びます。
MDLエディタでのマッピングの手順を次に示します。
図2-4 マッピングの手順
例を使用してマッピングについて説明します。なお,以下のマッピング定義例は,マッピングの流れを理解しやすくすることを意図したものなので,マッピング定義の詳細説明は省略しています。マッピング定義の詳細については,「4. MDLエディタの操作」を参照してください。
「2.1.3 フォーマットの定義手順」で定義した帳票「IN」のフォーマットと帳票「OUT」のフォーマットをマッピングします。
マッピングする入力側と出力側のフォーマットを読み込みます。ここでは,入力側のフォーマットとして帳票「IN」のフォーマット「IN」を,出力側のフォーマットとして帳票「OUT」のフォーマット「OUT」を読み込みます。
フォーマット挿入コマンドを実行すると[フォーマット挿入]ダイアログが表示されます。
入力データ又は出力データのファイル名が決まっている場合は,このダイアログにデータファイル名を指定します。ファイル名が決まっていない場合は,データ変換時のコマンド引数に,ファイル名を指定することもできます。例では,データ変換時のコマンド引数にファイル名を指定するので,データファイル名を指定しません。
挿入したフォーマットは,ツリー構造でルート構造以下が表示されます。
この定義例では変数を使用しないため,変数の定義はしません。
入力データのコンポーネントと出力データのコンポーネント間をマッピングします。
帳票「IN」と帳票「OUT」のコンポーネントの対応関係は次のようになります。
帳票「OUT」の要素「RECORD」「製品コード」「希望価格」「数量」は,対応する帳票「IN」の要素の値を代入します。帳票「OUT」の要素「小計金額」は,帳票「IN」に対応する要素がないので,値を計算して出力するようにマップ式を定義します。
マッピングは,出力データのコンポーネントに対して定義します。出力データのコンポーネントに,対応する入力データのコンポーネントをドラッグ&ドロップし,マップ式を定義します。
この例では,出力側のコンポーネント「RECORD」「製品コード」「希望価格」「数量」に,対応する入力側のコンポーネントをドラッグ&ドロップして代入します。
マップビューには,選択している出力側のコンポーネントに定義されているマップ式が表示されます。コンポーネントをドラッグ&ドロップすると,マップビューにマップ式の代入式が挿入されます。
マップ式には,コンポーネント名,演算子,関数及び記号を使用できます。出力側のコンポーネントを選択し,マップビューへコンポーネントをドラッグ&ドロップすると,ドラッグ&ドロップしたコンポーネント名がマップビューに記述されます。演算子,関数及び記号はダイアログで選択して使用できます。コンポーネント名,関数,演算子及び記号は,マップビューに直接テキストで入力することもできます。マップ式の詳細については,「6.6.6 マップ式」を参照してください。
出力側の要素「小計金額」は,入力側の二つの要素「単価」「個数」の乗算で求めるように演算子を使用してマップ式を定義します。コンポーネント「小計金額」を選択し,マップビューに二つの要素をドラッグ&ドロップし,乗算の演算子を使用します。
これでマッピングの定義は完成です。
チェックコマンドを実行して,マッピングの内容にエラーがないことを確認し,MDLファイルに名前を付けて保存します。ここでのファイル名は「SAMPLE.mdl」とします。
All Rights Reserved, Copyright (C) 2000, Information-technology Promotion Agency, Japan.
All Rights Reserved. Copyright (C) 2005, 2008, Hitachi, Ltd.
All Rights Reserved, Copyright (C) 1985-1998, Microsoft Corporation.