Create After-Update Trigger
MaxL create after update trigger文は、選択したEssbaseキューブ領域全体の状態の変更を追跡するためのトリガーを作成または置換するために役立ちます。トリガーは、データ更新操作の完了後にアクティブ化されます。
トリガーは、領域内での更新(イベント)中に、指定された制約条件への違反があったかどうかを追跡するために役立ちます。また、違反が検出された場合に実行する結果のアクションを指定するために使用できます。
必要な最小権限: データベース・マネージャ。
データ更新操作全体が完了した後でトリガーをアクティブにする場合は、after-updateトリガーを作成します。これは、集約ストレージ・モードでサポートされる唯一のトリガー・タイプです。更新後トリガーが使用されている場合、レベル0データのセルで更新操作が完了し、キューブ領域に指定されたなんらかの条件に更新操作全体が一致したときに、トリガーが実行されます。
ノート:
計算、データ更新またはデータ・ロードの間は、トリガーを作成または置き換えできません。
ノート:
特定のセルに、計算の前にあったのと同じ値が計算で割り当てられる場合、そのセルに対してトリガーはアクティブになりません。つまり、セルの値が変更されない場合、ブロックはダーティとしてマークされず、それらのブロックに対するトリガーは、トリガー条件に違反していた場合でもアクティブ化されません。
キーワード
MaxL create after update trigger文を使用して、次の方法でトリガーを作成します:
- create or replace after update trigger TRIGGER-NAME...
-
新しい更新後トリガーを作成します。
- create or replace after update trigger TRIGGER-NAME...
-
更新後トリガーを作成するか、同じ名前の既存のトリガーを置き換えます。
- create after update trigger...where <cube area>...
-
where句は、追跡するキューブの領域を定義する方法です。有効な対称MDXスライサの指定を使用します。
- create after update trigger...when <condition>...
-
when句は、テストする条件を定義する方法です。キーワードWHENに続けて有効なMDX条件式を使用します。条件をテストするには、MDX条件演算子および論理演算子、ブール関数およびMDX反復関数を使用できます。
- create after update trigger...then <action>...
-
then句は、WHEN条件が満たされた場合に実行するアクションを定義する方法です。「トリガーの例」の例を参照してください。
- create after update trigger...end
-
すべてのcreate trigger文をENDキーワードで終了する必要があります。
例
create or replace after update trigger Sample.Basic.WestColas where (Jan, Sales, Actual, [100], West) when Jan < 1500 then spool WestColas_Fail end;