接続されていないルックアップの例
接続されていないルックアップトランスフォーメーションを使用して、テーブル内の暗号化または数値ID値を、ルックアップテーブルのわかりやすい名前で置き換えることができます。
例えば、SAPトランザクションテーブルからデータウェアハウスのリレーショナルテーブルに一部の受注データをロードする必要があるとします。SAPテーブルには、販売グループや営業所などの値の数値IDが含まれています。データウェアハウステーブルでは、数値IDをローカル言語の対応する名前に置き換える必要があります。各IDに関連付けられている名前は、参照テーブルに格納されます。参照テーブルから名前を取得するには、接続されていないルックアップトランスフォーメーションを使用します。
次の図に、マッピングを示します。
次の方法でトランスフォーメーションを設定します。
- ソーストランスフォーメーション
ソーストランスフォーメーションを使用して、データの抽出元のテーブルを指定します。
[ソース]タブで、ソース接続を構成し、データを抽出するテーブルを選択します。
- 最初の式トランスフォーメーション(省略可能)
必要に応じて、式トランスフォーメーションを使用してフィールドの名前を変更し、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 |