トランスフォーメーション > ルックアップトランスフォーメーション > 接続されていないルックアップの例
  

接続されていないルックアップの例

接続されていないルックアップトランスフォーメーションを使用して、テーブル内の暗号化または数値ID値を、ルックアップテーブルのわかりやすい名前で置き換えることができます。
例えば、SAPトランザクションテーブルからデータウェアハウスのリレーショナルテーブルに一部の受注データをロードする必要があるとします。SAPテーブルには、販売グループや営業所などの値の数値IDが含まれています。データウェアハウステーブルでは、数値IDをローカル言語の対応する名前に置き換える必要があります。各IDに関連付けられている名前は、参照テーブルに格納されます。参照テーブルから名前を取得するには、接続されていないルックアップトランスフォーメーションを使用します。
次の図に、マッピングを示します。
このマッピングには、接続されていないルックアップトランスフォーメーションと、次の接続されたトランスフォーメーションが含まれます。ソーストランスフォーメーション、フィールドを選択してNULL値を置き換える式トランスフォーメーション、接続されていないルックアップトランスフォーメーションを呼び出す式トランスフォーメーション、およびターゲットトランスフォーメーションです。
次の方法でトランスフォーメーションを設定します。
ソーストランスフォーメーション
ソーストランスフォーメーションを使用して、データの抽出元のテーブルを指定します。
[ソース]タブで、ソース接続を構成し、データを抽出するテーブルを選択します。
最初の式トランスフォーメーション(省略可能)
必要に応じて、式トランスフォーメーションを使用してフィールドの名前を変更し、NULL値を置換します。
[受信フィールド]タブで、[名前付きフィールド]フィールドの選択条件を使用して、ターゲットテーブルに読み込むフィールドを選択します。必要に応じて、選択したフィールドの名前を変更してわかりやすい名前を付けます。
[式]タブで、NULL値を置き換える出力フィールドを作成します。例えば、販売グループコードおよび営業所コードのNULL値をスペースに置き換えるには、次の出力フィールドを作成します。
出力フィールド
in_sales_group
IIF(ISNULL(sales_group_code),' ',sales_group_code)
in_sales_office
IIF(ISNULL(sales_office_code),' ',sales_office_code)
接続されていないルックアップトランスフォーメーション
参照テーブルから説明を取得するには、接続されていないルックアップトランスフォーメーションを使用します。
[全般]タブで、[接続されていないルックアップ]オプションを有効にします。
[受信フィールド]タブで、ルックアップトランスフォーメーションに渡す必要がある各値の受信フィールドを作成して、必要なデータを取得します。例えば、ドメイン名、言語、およびコード値をルックアップトランスフォーメーションに渡すには、in_domain_name、in_language、およびin_lookup_codeフィールドを作成します。
[ルックアップオブジェクト]タブで、ルックアップ接続を構成し、ルックアップテーブルとして使用する参照テーブルを選択します。
[ルックアップ条件]タブで、各受信フィールドのルックアップ条件を指定します。以下に例を示します。
ルックアップフィールド
演算子
受信フィールド
domain_name
=
in_domain_name
language_code
=
in_language
lookup_code
=
in_lookup_code
[戻りフィールド]タブで、返される参照テーブルのフィールドを選択します。例えば、説明を返すには、戻りフィールドとしてlookup_descriptionを選択できます。
2番目の式トランスフォーメーション
式トランスフォーメーションを使用して、接続されていないルックアップトランスフォーメーションを呼び出し、各ID値に関連付けられている名前を取得します。
[受信フィールド]タブで、アップストリームトランスフォーメーションのすべてのフィールドを含めます。
[式]タブで、ルックアップトランスフォーメーションから各説明を取得する出力フィールドを作成します。:LKP式を使用して、ルックアップトランスフォーメーションを呼び出します。例えば、英語の適切なドメインから販売グループおよび営業所名を取得するには、次の出力フィールドを作成します。
出力フィールド
sales_group
:LKP.lkp_Descriptions('sales_group','en',in_sales_group)
sales_office
:LKP.lkp_Descriptions('sales_office','en',in_sales_office)
ターゲットトランスフォーメーション
[ターゲット]タブで、ターゲット接続を構成し、データをロードするリレーショナルテーブルを選択します。
[フィールドマッピング]タブで、アップストリームトランスフォーメーションから適切なターゲットフィールドに出力フィールドをマッピングします。例えば、2番目の式トランスフォーメーションからSALES_GROUPおよびSALES_OFFICEターゲットフィールドにsales_groupおよびsales_office出力フィールドをマッピングするには、次のフィールドマッピングを構成します。
ターゲットフィールト
マッピングされたフィールド
SALES_GROUP
sales_group
SALES_OFFICE
sales_office