---
sourceDocument: Capacidades da Now Platform da Yokohama
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/pt-BR/yokohama/servicenow-platform

 Release :

    - yokohama

ft:locale :

    - pt-BR

ft:publication_title :

    - Capacidades da Now Platform da Yokohama

ft:clusterId :

    - platcap

bundleId :

    - platcap

workflow :

    - Platform


---

# Executar gatilhos condicionalmente

# Executar gatilhos condicionalmente {#ariaid-title1}

* Versão de lançamento: Yokohama
* 
* Atualizado 30 de jan. de 2025
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 2 min. de leitura

MetricBase os gatilhos são executados com base em uma única métrica. Os scripts de condição impõem requisitos adicionais que determinam se um gatilho inicia um fluxo.

## Antes de Iniciar

Função necessária: administrador

## Por Que e Quando Desempenhar Esta Tarefa

Os Scripts de condição são executados quando as condições de um gatilho são atendidas, mas antes que o gatilho execute um fluxo Workflow Studio. Dessa forma, os Scripts de condição podem impedir que os gatilhos executem fluxos mesmo quando as condições do gatilho forem atendidas. Por exemplo, os dados geralmente flutuam ao longo do tempo. Pequenas flutuações podem causar eventos de gatilho duplicados e indesejados. Um Script de condição pode impedir essa duplicação incorreta.

Os scripts de condição às vezes também são chamados de scripts de moderador.

Scripts de condição sempre retornam <var class="keyword varname">verdadeiro</var> (gatilho) ou <var class="keyword varname">falso</var> (não gatilho). Para saber como escrever esses scripts, consulte [Script em ServiceNow Fundamentos](https://www.servicenow.com/services/training-and-certification/scripting-in-servicenow-training.html). Para experimentar scripts, consulte [Familiarize-se com MetricBase APIs](https://servicenow-prod.fluidtopics.net/bKyT_lXeB3GR8M5ED4gSgw "Faça experiências com MetricBase APIs usando Explorador de dados que faz parte da aplicação MetricBase Demo. Explorador de dados usa os dados instalados com a aplicação MetricBase Demo.").

## Procedimento

1. Navegar até TudoMetricBaseGatilhos de MetricBaseScript de condição do gatilho.
2. Selecione Novo.
3. No formulário, preencha os campos.  
   {#create-action-condition__table_khd_cjn_pbb__entry__2}

   | Campo | Descrição |
   |-|-|
   | Nome | Nome do Script de condição. |
   | Aplicação | Escopo do Script de condição. O valor Global significa que a ação se aplica a todos as aplicações. |
   | Descrição | Explicação do que o Script de condição faz. Quando ele retorna Verdadeiro ou Falso? |
   | Script | Campo para inserir o JavaScript. Faça com que ele retorne <var class="keyword varname">verdadeiro</var> para executar um fluxo. |
   [ ]

   {#create-action-condition__table_khd_cjn_pbb}
4. Escrever o Script de condição.  
   Ao escrever um script, pense nas instruções condicionais (para quais casos ele deve ser executado e em quais casos ele não deve). Se todos forem avaliados como <var class="keyword varname">verdadeiros</var>, o script retornará <var class="keyword varname">verdadeiro</var> e o fluxo será executado, caso contrário, não será. O script de exemplo a seguir aciona um fluxo quando um drone está viajando muito rápido em uma altitude baixa (definido pelo nível 1). O exemplo mostra uma abordagem típica para escrever um script de condição.
   1. Obtenha a definição do gatilho, passada como um parâmetro de função de filtro.
   2. Obtenha o registro (<var class="keyword varname">atual</var>) que está causando o evento de gatilho, passado como um parâmetro de função de filtro.
   3. Obtenha a hora do registro em que as condições de gatilho foram atendidas, passada como um parâmetro de função de filtro.
   4. Obtenha o nível do gatilho, passada como um parâmetro de função de filtro.
   5. Use esses parâmetros para retornar <var class="keyword varname">verdadeiro</var> se as condições de acionador de nível 1 forem atendidas e <var class="keyword varname">travel_state</var> for igual a viajar ou excesso de velocidade.  

          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}  
   Nota:  
   Os Scripts de condição devem ser executados rapidamente.
5. Selecione Enviar.

## O que Fazer Depois

Use Workflow Studio para [associar um fluxo a um gatilho](https://servicenow-prod.fluidtopics.net/UJYfHskZB9DYlFxRY6DLYQ "Agora que você criou um gatilho, use o Workflow Studio para especificar o fluxo que um gatilho executa. Os fluxos podem fornecer alertas para comportamento inesperado."). Ao configurar um fluxo, você pode selecionar um Script de condição criado.  
Figura 1. Adicionar um Script de condição a uma definição de gatilho em Workflow Studio

Você também pode associar um script de condição a um fluxo de gatilho na tabela MetricBase Fluxos de gatilho \[sys_flow_metric_trigger\]. Se você associar um script de condição a um fluxo de gatilho aqui, ele não aparecerá em Workflow Studio, mas ainda será executado com o gatilho.
Figura 2. Associe um Script de condição em MetricBase Fluxos de gatilho

