ユーザー定義のイベント トリガーの作成
ユーザー定義イベントトリガーを作成する場合は、まず、トリガーアクションの条件として機能できるユーザー定義イベントを作成する必要があります。次に、ユーザー定義イベントトリガーを作成します。最後に、トリガーをテストします。
トリガーは他のTDVリソースと同様に作成されますが、公開することはできません。
ユーザー定義イベントは、組み込みプロシージャのGenerateEvent (/lib/util/にあります)がイベント名と値を引数として呼び出されたときに生成されます。
ユーザー定義イベントトリガーは、クラスターごとに1回実行されます。タイマーベースのトリガーは、クラスター対応として指定でき、ユーザー定義イベントが生成されるすべてのクラスターノードで起動します。
ユーザー定義のイベントを作成するには
| 1. | 次の例のように、CallsGenerateEvent という名前の SQL スクリプト プロシージャを作成して、GenerateEvent を呼び出します。 |
PROCEDURE CallsGenerateEvent()
BEGIN
CALL GenerateEvent('runAReport', ' ');END
このプロシージャはGenerateEventを呼び出し、GenerateEventはrunAReportという名前のカスタムイベントを作成します。このプロシージャが実行されるたびに、GenerateEventはrunAReportという名前のカスタムイベントをトリガーシステムに挿入します。カスタムイベントは、ユーザー定義のイベントトリガーの[Condition(条件)]セクションでユーザー定義のイベント名として指定できます。
ユーザー定義のイベント トリガーを作成するには
-
リソース ツリーで新しいリソースを追加できる場所を右クリックし、[新しいトリガー] を選択します。
-
[入力] ウィンドウで、トリガーの名前を指定し、[OK] をクリックします。
-
右側に表示されるトリガー エディターで、[トリガーを有効にする] チェック ボックスをオンにして、トリガーを有効にします。
-
[条件タイプ] セクションのドロップダウン リストから [ユーザー定義イベント] を選択します。
-
[ユーザー定義のイベント名] フィールドに、イベントの名前を入力します。
-
run*などの正規表現を使用して、複数の類似したユーザー定義イベント名に一致させることができます。この例では、runAReportという名前を入力します。
-
[アクション タイプ] で、トリガーするアクションのタイプをドロップダウン リストから選択します。
-
[アクション] セクションで、アクション タイプのオプションを入力します。オプションについては、セクションアクション ペインで説明されています。
プロシージャが PIPE カーソルを含む SQL スクリプトである場合は、[出力カーソルの排出] を選択します。
たとえば、電子メール通知を送信する場合は、必要に応じて、通知を受信する受信者の電子メールアドレスを入力して確認します。アドレスフィールドに、電子メールアドレスのリストを、それぞれのアドレスをカンマ(,)またはセミコロン(;)で区切って指定できます。[Info(情報)]タブをクリックします。[Maximum Number In Queue(キュー内の最大数)]フィールドを、繰り返し制限によってトリガーの起動が妨げられている間に複数の期間が経過した場合に、このトリガーが起動される最大回数に指定します。ほとんどのトリガーは、次に使用可能なアクティブな動作時間枠のときに1回だけ起動しますが、繰り返し制限が次に開始されたときに複数のトリガーアクションが起動される場合があります。この数を負にすることはできません。
-
トリガーを保存します。
[Save (保存) ]オプションが有効になっていない場合は、[File (ファイル) ] > [Refresh All (すべて更新) ]を選択してリソースを更新し、[Save (保存) ]オプションを有効にします。
ユーザー定義のイベントトリガーをテストするには
| • | ユーザー定義のイベント トリガーの作成の説明に従って作成された CallsGenerateEvent プロシージャを実行します。 |