Hi, I'm Ask INFA!
What would you like to know?
ASK INFAPreview
Please to access Ask INFA.

目次

Search

  1. はじめに
  2. トランスフォーメーション
  3. ソーストランスフォーメーション
  4. ターゲットトランスフォーメーション
  5. アクセスポリシートランスフォーメーション
  6. アグリゲータトランスフォーメーション
  7. B2Bトランスフォーメーション
  8. チャンキングトランスフォーメーション
  9. クレンジングトランスフォーメーション
  10. データマスキングトランスフォーメーション
  11. データサービストランスフォーメーション
  12. 重複排除トランスフォーメーション
  13. 式トランスフォーメーション
  14. フィルタトランスフォーメーション
  15. 階層ビルダートランスフォーメーション
  16. 階層パーサートランスフォーメーション
  17. 階層プロセッサトランスフォーメーション
  18. 入力トランスフォーメーション
  19. Javaトランスフォーメーション
  20. JavaトランスフォーメーションAPIリファレンス
  21. ジョイナトランスフォーメーション
  22. ラベラトランスフォーメーション
  23. ルックアップトランスフォーメーション
  24. 機械学習トランスフォーメーション
  25. マップレットトランスフォーメーション
  26. ノーマライザトランスフォーメーション
  27. 出力トランスフォーメーション
  28. 解析トランスフォーメーション
  29. Pythonトランスフォーメーション
  30. ランクトランスフォーメーション
  31. ルータトランスフォーメーション
  32. ルール仕様トランスフォーメーション
  33. シーケンストランスフォーメーション
  34. ソータートランスフォーメーション
  35. SQLトランスフォーメーション
  36. 構造パーサートランスフォーメーション
  37. トランザクション制御トランスフォーメーション
  38. 共有体トランスフォーメーション
  39. ベクトル埋め込みトランスフォーメーション
  40. Velocityトランスフォーメーション
  41. ベリファイヤトランスフォーメーション
  42. Webサービストランスフォーメーション

トランスフォーメーション

トランスフォーメーション

トランザクションコミット制御

トランザクションコミット制御

トランザクションコミット制御では、トランスフォーメーションを通過する一連の行に基づいて、トランザクションのコミットとロールバックを制御できます。
マッピング
タスクでトランザクションの変更を行にコミットするか、トランザクションの変更をロールバックするか、トランザクションを変更しないかを決める条件を指定するには、IIF関数を入力します。
マッピング
タスクは、式の戻り値に基づいてコミットまたはロールバックを発行すると、新しいトランザクションを開始します。
複数のソースオブジェクトに接続している場合は、トランザクションコミット制御を設定できません。
式には次の構文を使用します。
IIF (condition, value1, value2)
トランザクションコントロール式を作成するときは、次の組み込み変数を使用します。
  • TC_CONTINUE_TRANSACTION.
    マッピング
    タスクでは、この行のトランザクション変更が実行されません。これは式のデフォルト値です。
  • TC_COMMIT_BEFORE.
    マッピング
    タスクはトランザクションをコミットし、新しいトランザクションを開始し、カレント行をターゲットに書き出します。カレント行は、新しいトランザクション内にあります。
  • TC_COMMIT_AFTER。
    マッピング
    タスクは、カレント行をターゲットに書き出し、トランザクションをコミットし、新しいトランザクションを開始します。カレント行は、コミットされたトランザクション内にあります。
  • TC_ROLLBACK_BEFORE。
    マッピング
    タスクは、現在のトランザクションをロールバックし、新しいトランザクションを開始し、カレント行をターゲットに書き出します。カレント行は、新しいトランザクション内にあります。
  • TC_ROLLBACK_AFTER.
    マッピング
    タスクは、カレント行をターゲットに書き出し、トランザクションをロールバックし、新しいトランザクションを開始します。カレント行は、ロールバックされたトランザクション内にあります。
トランザクションコントロール式がコミット、ロールバック、または継続以外の値に評価された場合、マッピングは無効になります。

トランザクションコミット制御を使って、注文入力日に基づいて注文情報を書き出す場合を想定します。特定日に受けたすべての注文は、同じトランザクションでターゲットにコミットするとします。
New_Dateというフィールドを作成し、カレント行の注文日を前の行の注文日と比較して、このフィールドに情報を入力します。注文の日付が異なる場合、New_Dateは1になります。
この場合は、次の式を使用して、
マッピング
タスクで新しい注文日が発生したときにデータをコミットします。
IIF(New_Date = 1, TC_COMMIT_BEFORE, TC_CONTINUE_TRANSACTION)