---
sourceDocument: オーストラリア ServiceNow AI Platform の機能
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/servicenow-platform

 Release :

    - australia

ft:locale :

    - ja-JP

ft:publication_title :

    - オーストラリア ServiceNow AI Platform の機能

ft:clusterId :

    - platcap

bundleId :

    - platcap

workflow :

    - Platform


---

# 条件付きでトリガーを実行

# 条件付きでトリガーを実行 {#ariaid-title1}

* リリースバージョン: Australia
* 
* 更新日 2026年03月12日
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 所要時間：3分

メトリックベース トリガーは単一のメトリクスに基づいて実行されます。条件スクリプトは、トリガーがフローを開始するかどうかを決定する追加の要件を課します。

## 始める前に

必要なロール：admin

## このタスクについて

条件スクリプトは、トリガーの条件が満たされ、トリガーが ワークフロースタジオ フローを実行する前に実行されます。このようにして、条件スクリプトは、トリガー条件が満たされた場合でも、トリガーがフローを実行しないようにすることができます。たとえば、多くの場合に、データは時間の経過とともに変動します。わずかな変動により、不要な重複トリガーイベントが発生する可能性があります。条件スクリプトは、そういった誤った重複を防ぐことができます。

条件スクリプトは、モデレータースクリプトと呼ばれることもあります。

条件スクリプトは常に <var class="keyword varname">true</var> (トリガーする) または <var class="keyword varname">false</var> (トリガーしない) を返します。これらのスクリプトの記述方法については、次を参照してください。 [のスクリプティング ServiceNow 基礎](https://www.servicenow.com/services/training-and-certification/scripting-in-servicenow-training.html). スクリプトを試すには、次を参照してください。 [について理解する メトリックベース API 一覧](https://servicenow-prod.fluidtopics.net/CZkVSvKTewK8iZEAWPeO6g "メトリックベース デモアプリケーションの一部である データエクスプローラー を使用して、メトリックベース API を試してみてください。データエクスプローラー は、メトリックベース デモアプリケーションとともにインストールされたデータを使用します。").

## 手順

1. 移動先 すべてメトリックベースMetricBase トリガートリガー条件スクリプト.
2. \[New (新規)\] を選択します。
3. フォームのフィールドに入力します。  
   {#create-action-condition__table_khd_cjn_pbb__entry__2}

   | フィールド | 説明 |
   |-|-|
   | 名前 | 条件スクリプトの名前。 |
   | アプリケーション | 条件スクリプトのスコープ。値 \[グローバル (Global)\] は、アクションがすべてのアプリケーションに適用されることを意味します。 |
   | 説明 | 条件スクリプトの機能の説明。True または False を返すのはどのような場合か？ |
   | スクリプト | JavaScript を入力するためフィールド。フローを実行するために <var class="keyword varname">true</var> を返すようにします。 |
   [ ]

   {#create-action-condition__table_khd_cjn_pbb}
4. 条件スクリプトを記述します。  
   スクリプトを記述するときは、条件ステートメントについて考慮します (実行する必要がある場合とそうでない場合)。すべてが <var class="keyword varname">true</var> と評価された場合、スクリプトは <var class="keyword varname">true</var> を返し、フローが実行されます。それ以外の場合は実行されません。次のスクリプト例では、低高度 (レベル 1 で定義) でドローンの移動速度が速すぎる場合にフローをトリガーします。この例は、条件スクリプトを記述する一般的な方法を示しています。
   1. フィルター関数パラメーターとして渡されるトリガー定義を取得します。
   2. フィルター関数パラメーターとして渡される、トリガーイベントの原因となっているレコード (<var class="keyword varname">current</var>) を取得します。
   3. フィルター関数パラメーターとして渡される、トリガー条件を満足するレコードから時間を取得します。
   4. フィルター関数パラメーターとして渡されるトリガーレベルを取得します。
   5. レベル 1 のトリガー条件が満たされ、<var class="keyword varname">travel_state</var> が移動または速度と等しい場合は、これらのパラメーターを使用して <var class="keyword varname">true</var> を返します。  

          function filter(/*GlideRecord*/ triggerDefinition, /*GlideRecord*/ current, /*GlideDateTime*/ start, /*int*/ level) {
          	// retrieve current travel state of drone
          	var travel_state = String(current.travel_state);
          	
          	// the drone is traveling at a significant speed, and the altitude just went below the threshold 
          	if (((travel_state === 'traveling') || (travel_state === 'speeding')) && (level === 1)){
          		return true; //process this trigger
          	}
          	
          	return false; // don't process this trigger
          }

   {#create-action-condition__substeps_ayb_zn4_pgb}  
   注:  
   条件スクリプトは迅速に実行する必要があります。
5. \[送信\] を選択します。

## 次のタスク

ワークフロースタジオ を使用して、[フローをトリガーに関連付けます](https://servicenow-prod.fluidtopics.net/FEQtmdP7cPcvD9kYg0R1lg "トリガーを作成したので、ワークフロースタジオを使用して、トリガーが実行するフローを指定します。フローは、予期しない動作に対するアラートを提供します。")。フローを設定するときに、作成した条件スクリプトを選択できます。  
図 : 1. ワークフロースタジオ で条件スクリプトをトリガー定義に追加する

メトリックベース トリガーフロー \[sys_flow_metric_trigger\] テーブルでトリガーフローに条件スクリプトを関連付けることもできます。ここで条件スクリプトをトリガーフローに関連付けると、ワークフロースタジオ には表示されませんが、トリガーによって実行されます。
図 : 2. メトリックベース トリガーフローで条件スクリプトを関連付ける

