カスタムキューを使用してイベントを処理する

  • リリースバージョン: Washingtondc
  • 更新日 2024年02月01日
  • 読む2読むのに数分
  • 大量のイベントや処理に時間がかかるイベントを作成するアプリケーションには、カスタムキューを使用できます。このタスクでは、カスタムキューとその監視プロセスを作成し、スクリプトを使用してキューにイベントを送信する方法を示します。

    始める前に

    必要なロール:admin

    注:
    この情報は、イベント処理を理解している上級ユーザーを対象としています。

    手順

    1. 移動先 システムポリシー > イベント > レジストリ.
    2. カスタムキューを作成するイベントを選択します。
      [イベント登録] フォームが表示されます。
    3. イベント登録でイベントの [キュー] フィールドに入力します。
      小文字のみを使用し、アンダースコア (_) 以外の特殊文字は使用しないでください。

      小文字のキューの名前を含む [キュー] フィールドが強調表示されたイベント登録フォーム。

    4. [送信] をクリックします。
      新しいイベントがイベント [sysevent] テーブルに一覧表示されます。

      次の例では、employeeOccasion イベントが生成されると my_queue に追加されます。イベントはキューに留まります。この問題を解決するには、イベントのキューを監視するプロセスを作成します。キューフィールドにリストされている追加されたキューを持つイベントをリストするイベントテーブル。

    5. 移動先 システムスケジューラ > ジョブスケジュール > ジョブスケジュール をクリックし、「 テキストインデックスイベントプロセス」という名前のスケジュール設定済みジョブを開きます。
      [名前] 検索フィールドが「*text」で、[テキストインデックスイベントの処理] スケジュールの名前が強調表示された [スケジュール] テーブル。
    6. [他のアクション] メニューアイコン (他のアクションアイコンメニュー) をクリックし、[挿入と維持] を選択して [テキストインデックスイベントの処理] のコピーを作成します。
      重要:
      かならずジョブをコピーし、[テキストインデックスイベントの処理] のジョブスケジュールを上書きしないようにしてください。
    7. コピーしたスケジュールアイテムで、[名前] フィールドの値を変更します。
    8. [ジョブコンテキスト] フィールドで、GlideEventManager() パラメーターの値を新しいキューの名前に置き換えます。
      [ジョブコンテキスト] フィールドに、名前が変更されたコピー済みアイテムと GlideEventManager の更新されたキュー名が表示されている [アイテムのスケジュール] フォーム。
      キュー監視プロセスは、サンプルの my_queue イベントキューでイベントを検索して処理します。

      [処理済み] および [キュー] フィールドの内容を強調表示するイベントテーブル。

    9. gs.eventQueue() メソッドの 5 番目のパラメーターを使用して、カスタムキューにイベントを送信します。

      次のコードは、my_queue カスタムキューにイベントを送信する方法を示しています。

      gs.eventQueue('x_60157_employee_spe.employeeOccasion', todaysOccasions, todaysOccasions.number, todaysOccasions.u_employee.name, 'my_queue');
      注:
      イベントが [イベント登録] にあり、キュー名が gs.eventQueue に指定されていない場合でも、[イベント登録] からのキューがイベントに割り当てられます。たとえば、gs.eventQueue('x_60157_employee_spe.employeeOccasion') は引き続きイベントを my_queue に関連付けます。gs.eventQueue() 呼び出しでキュー名が指定されている場合は、キューが優先されます。
      [イベント] [sysevent] テーブルをチェックすることで、呼び出されたイベントが処理されたことを確認できます。

      イベント名でフィルタリングされた処理済みイベントをリストするイベントテーブル。