# Como configurar botões de ação

Visão geral

Os botões de ações são componentes fundamentais de [tarefas humanas](/zeev/como-construir-processos/como-desenhar-processos/o-que-sao-atividades/como-configurar-atividades-humanas.md) e [eventos de início](/zeev/como-construir-processos/como-desenhar-processos/como-usar-eventos/evento-de-inicio.md).

São eles que permitem que pessoas abram uma solicitação ou finalizem uma tarefa, e, por consequência, deem andamento na solicitação.

Todo evento de início ou tarefa humana deve ter, no mínimo, 1 botão de ação. Ao mesmo tempo, é possível ter um número ilimitado de botões de ações (algo não recomendável, na medida em que tornará a experiência da pessoa bastante complexa).

## Para que são usados botões

Os botões de ação são utilizados principalmente para:

* Para [iniciar uma solicitação](/zeev/como-construir-processos/como-desenhar-processos/como-usar-eventos/evento-de-inicio.md);
* Para [finalizar uma tarefa humana](/zeev/como-construir-processos/como-desenhar-processos/o-que-sao-atividades/como-configurar-atividades-humanas.md#como-finalizar-uma-tarefa-humana), informando o resultado final da tarefa;
* Para [testar condições em gateways](/zeev/como-construir-processos/como-desenhar-processos/como-configurar-gateways/condicoes-em-gateways.md) e rotear o aplicativo para diferentes direções.

## Configurações Gerais

### Validar formulário

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

Para cada botão customizado criado, você pode indicar se ele deve validar o formulário ou não.&#x20;

Isso significa que para o campo do formulário ser efetivamente validado, ou seja, para o Zeev checar se você preencheu realmente o campo, é preciso:

* Que o [campo tenha sido criado como obrigatório](/zeev/como-construir-processos/como-criar-formularios.md);
* Que o [campo esteja editável na tarefa](/zeev/como-construir-processos/como-desenhar-processos/o-que-sao-atividades/como-configurar-atividades-humanas/como-configurar-formulario.md#editavel);
* Que o botão de ação seja configurado para **validar os campos obrigatório**s;

Imagine o cenário onde você tem uma tarefa humana chamada "Realizar a compra de produtos". Imagine que você tem um formulário nesse tarefa com os seguintes campos: data da compra, valor da compra, fornecedor escolhido e valor final da compra (todos obrigatórios). Imagine agora que você possui dois botões de ações nessa tarefa: "Compra finalizada" e "Solicitar revisão". Observe que:

* Se você clicar em "Compra finalizada" está informando ao sistema que finalizou com sucesso a tarefa e, portanto, os campos do formulário devem ser efetivamente validados;
* Se você clicar em "Solicitar revisão" está informando ao sistema que ocorreu algum problema, como um dado incompleto ou documento faltante. E que você deseja devolver o processo ao solicitante para revisões. Nesse caso, você não efetuou a compra. Não faz sentido que o formulário seja validado.

Assim, no exemplo acima, enquanto o botão "Compra finalizada" deve ser configurado para validar o formulário, o botão "Solicitar revisão" não deve.

### Obrigar preenchimento de justificativa

Igualmente, para cada botão de ação criado, você pode informar se ele **requer uma justificativa obrigatória**. Se marcada essa opção, ao clicar no botão, ao invés de finalizar a tarefa, um box de observações será aberto para seu preenchimento.

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

Veja o mesmo exemplo do [tópico anterior](#validar-formulario).  Enquanto o botão "Compra finalizada" valida o preenchimento dos campos obrigatórios, o botão "Solicitar revisão" não faz essa validação e retorna a solicitação ao solicitante. Ao configurar o botão "Solicitar revisão" para obrigar preenchimento de justificativa, você pode forçar a pessoa que clicar nele a explicar porque está solicitando a revisão. Essa mensagem será de grande valia para o próximo responsável do processo (o solicitante) entender o que aconteceu de errado.&#x20;

Geralmente, portanto, esse recurso é utilizado para negações ou ações de rejeição ou revisão de solicitações. Mas nada impede que seja utilizado para outros fins, também.

A mensagem incluída fará parte do histórico da solicitação e, também, será automaticamente incluída como uma [mensagem do aplicativo](broken://pages/-MDthqHhk7fzO4iiYJz4).

### Ordem dos botões

Como boa prática, botões com conotação positiva, que derão sequencia à ordem lógica principal do processo, **devem ficar à direita da tela**. Já os botões com conotação negativa, que denotem encerramento abrupto ou retorno do processo, **devem ficar à esquerda da tela**.

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

No caso da existência de caminhos e decisões intermediárias, os botões devem ficar **entre** os botões positivos e negativos.

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

## Botões padrão

Os botões padrões são simplesmente atalhos para facilitar a automatização. Você pode optar por não utilizá-los, desmarcando as opções correspondentes. Nesse caso, você deverá obrigatoriamente criar um [botão customizado](#botoes-customizados).

Ao criar um evento de início, é criado automaticamente um botão de ação padrão, cujo texto é "Enviar solicitação".&#x20;

Ao criar uma tarefa humana, caso ela [seja do tipo "aprovação"](/zeev/como-construir-processos/como-desenhar-processos/o-que-sao-atividades/como-configurar-atividades-humanas.md#aprovacao-x-instrucao), os seguintes botões padrão estarão disponíveis:

<table><thead><tr><th>Ação</th><th width="150">Texto</th><th width="178">Valida formulário?</th><th>Justificativa?</th></tr></thead><tbody><tr><td>Ação positiva</td><td>Aprovar</td><td>Sim</td><td>Não</td></tr><tr><td>Ação negativa</td><td>Rejeitar</td><td>Não</td><td>Sim</td></tr></tbody></table>

Ao criar uma tarefa humana, caso ela [seja do tipo "instrução"](/zeev/como-construir-processos/como-desenhar-processos/o-que-sao-atividades/como-configurar-atividades-humanas.md#aprovacao-x-instrucao), os seguintes botões padrão estarão disponíveis:

<table><thead><tr><th>Ação</th><th width="150">Texto</th><th width="178">Valida formulário?</th><th>Justificativa?</th></tr></thead><tbody><tr><td>Ação positiva</td><td>Concluído</td><td>Sim</td><td>Não</td></tr><tr><td>Ação negativa</td><td>Não-concluído</td><td>Não</td><td>Sim</td></tr></tbody></table>

## Botões customizados

Os botões customizados são opcionais e são botões especiais que você mesmo cria e define todas as suas configurações.

Você irá definir o texto, ação, cor de fundo, cor de texto, se ele valida o formulário e se obriga justificativa ou não.

Pode, ainda, definir a ordem que esses botões são listados arrastando através do "*drag and drop*".

Ao lado direito você conta com uma pré-visualização do botão, atualizada em tempo real.

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


---

# 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/o-que-sao-atividades/como-configurar-atividades-humanas/como-configurar-botoes-de-acao.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.
