コンテンツにスキップ

フィルターに一致する行を更新し、その結果をターゲットテーブルに書き込みます。すべてのソース行がターゲットに届きます。フィルターに一致する行は新しい値で、それ以外のすべての行は元のままです。ターゲットの行数は、常にソースの行数と等しくなります。

フィルターが決めるのは、どの行が変更されるかであり、どの行が返されるかではありません。この点が、フィルターに一致しない行を削除するTable Extractステップとの違いです。

ソースとターゲット

Source And Target

ソーステーブルとターゲットテーブルを設定するには、まずソーステーブルドロップダウンメニューから、抽出元のデータテーブルを選択します。次に、ターゲットテーブルドロップダウンで既存のテーブルをターゲットテーブルとして選択するか、緑色の “+” 記号をクリックして新しいテーブルをターゲットとして作成します。

テーブルの作成

新しいテーブルを作成するときは、ビューまたはテーブルのどちらかとして作成できます。

ビュー:

ビューを使用すると、テーブルを使用する場合に比べてステップの実行時間が大幅に短くなります。一方、ビューにはテーブルの詳細モードでのデータ探索に向かないという欠点があります。

テーブル:

ターゲットにテーブルを使用すると、ステップの実行に時間がかかりますが、詳細モードでのデータ探索はビューよりもはるかに高速です。

ターゲットは、ソースとは異なるテーブルである必要があります。このステップはすべてのソース行を読み取って書き出すため、ターゲットを自分自身のソースに向けると、読み取ったばかりのデータに結果が追加されてしまいます。

ターゲットの列は常にソースの列を反映するため、選択する必要はありません。更新しない列は、このステップが最後に開かれたあとでソースに追加された列も含め、変更されずにそのまま渡されます。

テーブルデータの選択 タブで、変更する列ごとに行を追加し、次のいずれか1つだけを設定します。

  • 定数 — 固定値。
  • 式 — 計算。同じ行の他の列を参照できます。
  • NULLに設定 — 列をクリアします。

一覧にない列は、そのまま残されます。

左側のソース列に一覧表示されていない 更新列 は、定数、式、NULLに設定 が設定された行であっても、⚠の警告マークとともに赤で表示されます。このステップは、その列を正確な名前で更新するためです。そのような行を含めたまま保存すると、古い列が見つかりました ダイアログが開き、すべて削除して保存、このまま保存、キャンセル が表示されます。

保存時には、ソース列の一覧とは関係なく、各 更新列 が現在のソーステーブルに対して、正確な名前でチェックされます。テーブルにない更新列は 不足しているソース列 ダイアログに名前が表示されます。そのままではステップの実行時に失敗するためです。ソース列の一覧自体はテーブルに対してチェックされません。このステップが読み取るのは、一覧ではなくテーブルそのものだからです。

更新用のデータフィルター タブで、変更する行を特定する条件を入力します。空のままにすると、すべての行が更新されます。

条件を評価できない行(最も多いのは、テストする列がNULLの場合)は、一致しないものとして扱われ、変更されずにそのまま渡されます。これは、データベースが同じ条件を評価する方法と同じです。

この例では、「Ledger Value to be allocated」でVersionが「Actual」に等しい行について、勘定科目を41000に設定します。それ以外のVersionの行は、元の勘定科目のままターゲットに届きます。

勘定科目を定数に設定した テーブルデータの選択 タブ:

Table Updateの列マッピング

変更する行を選ぶ条件を保持する 更新用のデータフィルター タブ:

Table Updateのデータフィルター