目次

Search

  1. はじめに
  2. トランスフォーメーションに関する作業
  3. アグリゲータトランスフォーメーション
  4. カスタムトランスフォーメーション
  5. カスタムトランスフォーメーション関数
  6. データマスキングトランスフォーメーション
  7. データマスキングの例
  8. 式トランスフォーメーション
  9. エクスターナルプロシージャトランスフォーメーション
  10. フィルタトランスフォーメーション
  11. HTTPトランスフォーメーション
  12. ID解決トランスフォーメーション
  13. Javaトランスフォーメーション
  14. JavaトランスフォーメーションAPIのリファレンス
  15. Java式
  16. Javaトランスフォーメーションの例
  17. ジョイナトランスフォーメーション
  18. ルックアップトランスフォーメーション
  19. ルックアップキャッシュ
  20. 動的ルックアップキャッシュ
  21. ノーマライザトランスフォーメーション
  22. ランクトランスフォーメーション
  23. ルータトランスフォーメーション
  24. シーケンスジェネレータトランスフォーメーション
  25. ソータトランスフォーメーション
  26. ソース修飾子トランスフォーメーション
  27. SQLトランスフォーメーション
  28. マッピングにおけるSQLトランスフォーメーションの使用
  29. ストアドプロシージャトランスフォーメーション
  30. トランザクション制御トランスフォーメーション
  31. 共有体トランスフォーメーション
  32. 構造化されていないデータのトランスフォーメーション
  33. アップデートストラテジトランスフォーメーション
  34. XMLトランスフォーメーション

トランスフォーメーションガイド

トランスフォーメーションガイド

式に関する作業

式に関する作業

いくつかのトランスフォーメーションでは、式エディタを使用して式を入力できます。以下の関数を使用して、式を作成します。
  • トランスフォーメーション言語関数。
    一般的な式を扱うように設計された、SQLに似た関数
  • ユーザー定義関数。
    トランスフォーメーション言語関数に基づいてPowerCenterで作成する関数です。
  • カスタム関数。
    カスタム関数APIを使用して作成する関数です。
入力または入出力ポートから得たデータの値を使用するポートに、式を入力します。 例えば、全従業員の給与が含まれる入力ポートIN_SALARYを持つトランスフォーメーションがあるとします。あとから、マッピングのIN_SALARYカラムの値と、このトランスフォーメーションで計算する給与総額および給与平均額を使用する必要が出る場合もあります。 そのため、Designerでは各計算値について別の出力ポートを作成する必要があります。
以下の表に、式を入力できるトランスフォーメーションを示します。
トランスフォーメーション
戻り値
アグリゲータ
トランスフォーメーションを通過するすべてのデータに基づいて、集計を行います。また、集計するレコードに対してフィルタを指定して、特定のレコードを排除できます。例えば、このトランスフォーメーションを用いて、事務所の全従業員の総数と平均給与を算出できます。
ポートの集計結果。
データマスキング
行の入力ポートまたは出力ポートの値に基づいて計算を実行します。 式は、データマスキングトランスフォーメーション内のプロダクションデータをマスキングするメソッドです。
入力ポートまたは出力ポートを使用した行レベルの計算結果。
単一の行内の値に基づいて計算を行います。たとえば、特定品目の価格や数量に基づいて、注文におけるその品目の購入価格合計値の算出ができます。
ポートの行レベルの計算結果。
フィルタ
このトランスフォーメーションを通過する行のフィルタリング条件を指定します。たとえば、未払い残高のある顧客についてのBAD_DEBTテーブルに顧客データを書き込みたい場合には、フィルタトランスフォーメーションを用いて顧客データのフィルタリングができます。
TRUEまたはFALSE。これは行が指定条件を満足しているかどうかによります。TRUEを返す行だけがこのトランスフォーメーションから出力されます。このトランスフォーメーションは該当値を各取得行に適用します。
ランク
ランクに含める行の条件を設定します。たとえば、現在会社に所属している販売員の上位10名をランク付けできます。
ポートの条件適用結果または計算結果。
ルータ
グループ式に基づいて、複数のトランスフォーメーションにデータをルーティングします。たとえば、このトランスフォーメーションを使用して、3つの異なる給与レベルに属する従業員の給与を比較します。これは、ルータトランスフォーメーションに3つのグループを作成することによって行うことができます。たとえば、各給与範囲に対して1つのグループ式を作成します。
TRUEまたはFALSE。これは行が指定されたグループ式を満足しているかどうかによります。TRUEを返す行のみが、このトランスフォーメーションの各ユーザー定義グループを通過します。FALSEを返す行は、デフォルトグループを通過します。
アップデートストラテジ
行に更新、挿入、削除、またはリジェクトのフラグを設定します。一定の条件に基づいてターゲットの更新を管理する場合に、このトランスフォーメーションを使用します。たとえば、アップデートストラテジトランスフォーメーションを用いて、全顧客の行に対して、メールアドレスが変更された際に更新フラグを設定したり、全従業員の行に対して、社員でなくなった者についてはリジェクトフラグを設定したりできます。
更新、挿入、削除、またはリジェクトに対応する数値コード。このトランスフォーメーションは該当値を各取得行に適用します。
トランザクション制御
Integration Serviceが実行する操作(コミット、ロールバック、またはトランザクション変更なし)を決定する条件を指定します。 トランスフォーメーションに渡される行または行のセットに基づくコミットおよびロールバックトランザクションを制御したい場合、このトランスフォーメーションを使用します。たとえば、このトランスフォーメーションを使用して、注文の入力日付に基づいて行のセットをコミットできます。
以下のいずれかのビルトイン変数。行が指定された条件に一致しているかどうかにより戻り値が決まります。
  • TC_CONTINUE_TRANSACTION
  • TC_COMMIT_BEFORE
  • TC_COMMIT_AFTER
  • TC_ROLLBACK_BEFORE
  • TC_ROLLBACK_AFTER
Integration Serviceは、戻り値に基づいてアクションを実行します。