# Condições em gateways

## Visão geral

Dos três tipos de gateways existentes, 2 deles, enquanto elementos divergentes, devem possuir **condições associadas** em suas conexões de saída. São os gateways [condicional exclusivo](/zeev/como-construir-processos/como-desenhar-processos/como-configurar-gateways/gateway-condicional-exclusivo.md) e [condicional inclusivo](/zeev/como-construir-processos/como-desenhar-processos/como-configurar-gateways/gateway-condicional-inclusivo.md).

No desenho abaixo vemos esses dois gateways em uso. As conexões marcadas em vermelho devem possuir condições, que serão avaliadas pelo próprio Zeev no momento da execução de cada instância do processo.

![](/files/S89dTfA5OXWVSe291NJg)

Essas condições são definidas e montadas ao configurar as propriedades do gateway.  **Ou seja, é dentro do gateway que montamos as condições.**

Entretanto, como vimos antes, o gateway **não** é uma tarefa. Ele é um elemento automatizado, executado pelo sistema. Nenhum ser humano executa ou é responsável por um gateway, e o gateway não agrega nenhuma informação adicional ao processo. Todas as decisões que o gateway tomar devem ser baseadas em fatos e decisões que já ocorreram antes no processo (no [evento de início](/zeev/como-construir-processos/como-desenhar-processos/como-usar-eventos/evento-de-inicio.md) ou em  [atividades](/zeev/como-construir-processos/como-desenhar-processos/o-que-sao-atividades.md) passadas, sejam elas tarefas humanas ou outras, automatizadas).

As condições podem ser definidas com base em:

* No último [botão de ação](/zeev/como-construir-processos/como-desenhar-processos/o-que-sao-atividades/como-configurar-atividades-humanas/como-configurar-botoes-de-acao.md) clicado por uma pessoa em uma [tarefa humana](/zeev/como-construir-processos/como-desenhar-processos/o-que-sao-atividades/como-configurar-atividades-humanas.md). Por exemplo, você pode montar uma condição para testar se na atividade humana anterior o ator clicou no botão "Aprovar";

* Em um valor de um [campo do formulário](/zeev/como-construir-processos/como-criar-formularios.md). Por exemplo, você pode montar uma condição para testar se o valor do campo "Total da compra" é maior do que 1.000.000;<br>

* Com base em uma [regra de negócio](/zeev/outras-configuracoes-avancadas/o-que-sao-regras-de-negocio.md). Por exemplo, você pode montar uma condição para executar uma regra de negócio que determina qual é a área responsável pelo processo e com isso testar se área da regra é "RH";<br>

* Você também pode acrescentar uma regra que relacione campos do formulário. Para isso você deve usar o [token ](/zeev/outras-configuracoes-avancadas/dicionario-de-tokens-de-variaveis/tokens-de-campos-de-formulario.md)do campo do formulário. Por exemplo: \<Item> \<igual a> ***{Form.Campo}***.<br>

* Uma múltipla combinação dos critérios acima;

### Lógica das condições

Ao selecionar um caminho para ser seguido, você o definirá como caminho padrão, caso as demais condições no gateway não estejam contempladas.

{% hint style="info" %}
Esta decisão pode ser muito importante para que seu processo não fique "travado" em um gateway.
{% endhint %}

<figure><img src="/files/lvsR4LzjrLlTXJpAvxP1" alt=""><figcaption></figcaption></figure>

## Demonstração prática

Confira no vídeo a seguir a demonstração de como configurar condições em gateways.

{% embed url="<https://youtu.be/yVsxjeuESYc>" %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://kb.stoque.com.br/zeev/como-construir-processos/como-desenhar-processos/como-configurar-gateways/condicoes-em-gateways.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
