手順
-
Resellersコンポーネントをダブルクリックして、[Basic settings] (基本設定)ビューを表示します。
-
[Property type] (プロパティタイプ)リストから[Repository] (リポジトリー)を選択し、[Repository Content] (リポジトリーのコンテンツ)ダイアログボックスからコンポーネントのスキーマ(このシナリオではresellers)を選択します。残りのフィールドは自動的に入力されます。
注:
このシナリオでは、入力スキーマは[Repository] (リポジトリー)ツリービューの[Metadata] (メタデータ)ノードに保管されて、簡単に取り出せます。リポジトリーにメタデータを作成する方法の詳細は、 Talend Studioユーザーガイドをご覧ください。
-
tMapコンポーネントをダブルクリックして、[Map Editor] (マップエディター)を開きます。
新しい入力コンポーネントのスキーマは入力エリアに追加済みとなっています。
- Cars_dataテーブルのID_ResellerカラムをResellers_dataテーブルのID_Resellerカラムにドロップして、メイン入力フローと新しい入力フローの間に結合を作成します。
-
Resellers_dataテーブルの上部にあるtMap settingsボタンをクリックし、[Join Model] (結合モデル)を[Inner Join] (内部結合)に設定します。
-
Resellers_dataテーブルのID_Resellerを除くすべてのカラムを、メイン出力テーブルInsuredにドラッグします。
注:
2つの内部結合が定義されている場合は、2つの異なる内部結合リジェクトテーブルを定義して2つのリジェクトを区別する必要があります。または、内部結合リジェクト出力が1つしかない場合は、両方の内部結合リジェクトが同じ出力に保管されます。
- 出力エリアの上部にある[+]ボタンをクリックして新しい出力テーブルを追加し、この新しい出力テーブルにReject_ResellerIDという名前を付けます。
- Cars_dataテーブルのすべてのカラムをReject_ResellerIDテーブルにドラッグします。
-
[tMap settings] (tMap設定)ボタンをクリックし、 [Catch lookup inner join reject] (ルックアップ内部結合リジェクトの収集)でtrueを選択して、この新しい出力テーブルを内部結合リジェクト出力として定義します。
定義された内部結合を確立できない場合、関連する自動車に関する情報は、この出力フローを通じて収集されます。
-
次に、2つのタイプのリジェクトを区別するために、2つの内部結合リジェクト出力にフィルターを適用します。
最初の内部結合出力テーブルReject_OwnerIDで、プラスの矢印ボタンをクリックしてフィルター行を追加し、次の式を入力して、所有者IDに関連するリジェクトのみを収集します:
Owners_data.ID_Owner==null
-
2番目の内部結合出力テーブルReject_ResellerIDで、次の式を使って同じ操作を繰り返します:
Resellers_data.ID_Reseller==null
[OK]をクリックしてマップ設定を確定し、[Map Editor] (マップエディター)を閉じます。 -
No_Reseller_IDコンポーネントをダブルクリックして、[Basic settings] (基本設定)ビューを表示します。
出力ファイルパスを指定し、[Include Header] (ヘッダーを含める)チェックボックスをオンにして、その他のパラメーターはそのままにします。
- マッパーの動作を示すために、この例では、入力ファイルResellers.csvからリセラーID 5と8を削除します。