ユーザーガイド > Any-Any変換エディターの使用 > 変換エディターの使用 > 接続とループの操作
 
接続とループの操作
接続とループは、変換内のデータの処理方法を定義するのに役立ちます。このセクションは、次のトピックで構成されています。
割り当てリンクの追加
ループリンクの追加
リンクの自動マップモードの使用
リンクの自動入力モードの使用
ループ操作の編集
接続線へのキャスト操作の追加
リンク割り当ての追加
リンクは、データ変換の方向を示すためにリソース間に描画する矢印です。割り当ては、ソースとターゲット間のデータ移動をマップするために使用されます。
変換エディターの[Model(モデル)]タブにリンク割り当てを追加するには
1.[Assign Link Mode(リンク割り当てモード)]を選択します。または、変換エディターのリンク作成ツールバーアイコンが押されている状態でShiftキーを押しながら操作します(Shift+Minus)。
2.操作ハンドルをクリックし、マウスボタンを押したまま、接続先の行に線をドラッグします。
3.変換を保存します。
ループリンクの追加
ループリンクを使用すると、変換エディターモデルに操作を追加して、シーケンスによる反復をより簡単に定義できます。ループリンクのエンドポイントの1つがループである場合、新しいループ操作が[Model(モデル)]タブに作成されます。
変換エディターの[Model(モデル)]タブで2つの操作の間にループを追加するには
1.[Loop Link Mode(loopリンクモード)]を選択します。または、変換エディターのリンク作成ツールバーアイコンが押されている状態でShiftキーを押しながら操作します(Shift+Minus)。
2.操作ハンドルをクリックし、マウスボタンを押したまま、接続先の行に線をドラッグします。
3.変換を保存します。
ループを表す新しいボックスがモデルに描画されます。この新しい操作を使用して、ループロジックの動作を定義します。
リンクの自動マップモードの使用
自動マップを使用すると、変換でのある操作から別の操作にテーブルまたはビューのメタデータを簡単に割り当てることができます。自動マップモードでは、パラメーターの名前が比較され、相互に一致する値がマップされます。
自動マップ機能を使用するには
1.既存の変換を開くか、新しい変換を作成します。
2.変換にデータ構造を含む操作またはリソースが2つ以上あることを確認します。
3.[Auto Map Link Mode(リンクの自動マップモード)]を選択します。
4.マウスをクリックしてドラッグし、類似したパラメーターを持つ2つの操作の間に線を引きます。
5.マウスを放して、2つの操作を接続します。
TDVは、一致する名前に従って2つの構造をマップします。例:
6.変換の必要に応じて、マッピングを保持または削除します。
7.変換を保存します。
リンクの自動入力モードの使用
自動入力を使用すると、変換でのある操作から別の操作にメタデータ構造を割り当てて複製できます。自動入力アクションのターゲット操作に、ソース操作の一部であるパラメーターがない場合は、それらパラメーターがターゲット操作に追加されます。
自動入力機能を使用するには
1.既存の変換を開くか、新しい変換を作成します。
2.変換に、ビュー、テーブル、またはXMLスキーマに存在するデータ構造を含む操作またはリソースが2つ以上あることを確認します。
3.[Auto Fill Link Mode(リンクの自動入力モード)]を選択します。
4.マウスをクリックしてドラッグし、類似したパラメーターを持つ2つの操作の間に線を引きます。
5.マウスを放して、2つの操作を接続します。
TDVは、一致する名前に従って2つの構造をマップし、自動マップのターゲットに追加のパラメーターを追加します。例:
6.変換の必要に応じて、マッピングとパラメーターを保持または削除します。
7.変換を保存します。
ループ操作の編集
ループ操作を使用すると、ループ参照と変換を簡単に定義できます。ループを編集して、ループロジックの動作を定義します。編集する際には、次の制限を考慮してください。
ループ操作は、シーケンスを生成するために使用されます。
ターゲットシーケンスのサイズは、ソースシーケンスに一致します。
ターゲットシーケンスのコンテンツは、必ずしもソースに一致する必要はありません。
ターゲットシーケンスのサイズのみがループによって制御されます。
アイテムフィルターを使用すると、ターゲットシーケンスのサイズを制限できます。
クエリーが実行のためにSQLデータベースにプッシュされる場合は、クエリー操作でSQL関数を使用できます。クエリー操作以外では、正規関数、XQuery関数、またはカスタム関数を使用できます。
ループ操作に不正な文字を含む式が含まれている場合は、それらの文字を二重引用符で囲む必要があります。次の文字は不正と見なされます。
'\\', '[', ']', '-', '(', ')', '.','^','$','+', '*','?', '{', '}', '|', ':', '<', '>', '<', '='
変換エディターの[Model(モデル)]タブで2つの操作の間のループを編集するには
1.ループをダブルクリックして選択します。
接続した反復子行によっては、ループエディターに1つ以上の反復子レベルがすでに定義されている場合があります。
2.新しい反復子を追加するには、プラス記号がある緑色の円をクリックします。
名前は、ループの反復レベルに付けられた名前であり、ループのソース入力の名前に一致します。レベルは、反復子に関連付けられているネストレベルを示します。
3.フィルターロジックを定義するには、[Item Filter(アイテムフィルター)]フィールドにテキストを入力します。アイテムフィルターは反復ごとに処理されます。
 
説明
True
アイテムフィルターがtrueと評価された場合は、ターゲットシーケンスアイテムを生成するために現在のループエントリーが使用されます。
アイテムフィルターがtrueの場合、ターゲットシーケンスにはソースシーケンスと同じ数のアイテムが含まれます。
False
falseと評価された場合は、スキップされます。
複雑な式
より複雑な式を指定すると、指定された条件を満たすデータのみが出力されます。
たとえば、totalPrice > 50.0の場合、ループは合計価格が50を超えるエントリーのみを出力します。
式がループの入力を参照する場合にのみ有効です。
4.[Item Filter(アイテムフィルター)]フィールドの右側にある矢印を使用し、[Filter Name(フィルター名)]フィールドを、定義する必要がある特定のループロジックに適した順序で並べます。
5.[Close(閉じる)]をクリックして定義を保存し、ループ反復子エディターを閉じます。
6.変換を保存します。
接続線へのキャスト操作の追加
変換の設計中に、一部のリンク線が赤色またはオレンジ色になる場合があります。これは、エラーまたは警告メッセージがこれらのリンク線に関連付けられていて、修正が必要であることを示しています。多くの場合、警告メッセージは、接続された2つのポイント間にキャスト関数を追加することで修正できます。
接続線にキャスト操作を追加するには
1.変換を開きます。
2.オレンジ色または赤色で表示されている接続を選択します。
3.右クリックして[Insert Cast(キャストの挿入)]を選択します。
4.[Transformation Editor(変換エディター)]パレットで、[Cast(キャスト)]を選択します。
キャスト操作が変換に追加されます。
5.キャスト操作をダブルクリックします。
6.データのデータ型を選択します。
7.追加のデータ型の詳細を指定します。
8.[OK]をクリックします。
9.変換を保存します。