# Checkbox (Único)

Esse campo permite o usuário responder a uma pergunta cuja resposta tem duas opções.

### Grupo de informações

Dentro das configurações, é possível alterar o [grupo de informação](http://wiki.agilityflow.io/books/manual-de-customiza%C3%A7%C3%A3o/page/divis%C3%A3o-e-agrupamento-dos-campos "Divisão e agrupamento dos campos") ao qual o campo foi atribuído no momento da criação.

### Nome de Apresentação

Mostra o nome de apresentação informado no momento da criação. Esse é o nome que será mostrado na tela para o usuário.

### Texto ao lado do Checkbox

Nesse campo, é possível definir o texto quando o campo está marcado, e quando o campo está desmarcado. O texto escolhido quando o campo está marcado, será mostrado na tela, enquanto o texto do campo quando está desmarcado, apenas será mostrado na listagem e no filtro de dados.

![](http://wiki.agilityflow.io/uploads/images/gallery/2019-02-Feb/scaled-840-0/image-1550697051924.png)

#### Quando marcado

Texto a ser exibido ao lado do campo. Quando estiver marcado, esse texto será mostrado na listagem de dados.

![](http://wiki.agilityflow.io/uploads/images/gallery/2019-02-Feb/scaled-840-0/image-1550696926304.png)

#### Quando desmarcado

Esse texto não será exibido quando estiver desmarcado, mas será mostrado na listagem de dados.

![](http://wiki.agilityflow.io/uploads/images/gallery/2019-02-Feb/scaled-840-0/image-1550697002065.png)

### Coluna Banco de dados (SQL)

Esse é o nome interno, usado pelo sistema, a ser criado no banco de dados do agilityflow. É uma informação técnica e esse campo é preenchido automaticamente pelo sistema.

<p class="callout warning">Na maioria dos casos, você não precisa alterar o nome sugerido pelo sistema.</p>

Diferentemente do campo "Nome de Apresentação", esse campo não fica visível para o usuário.

> Para que serve o campo Coluna Banco de dados (SQL)?

Esse campo vai ser utilizado ao criar reports e dashboards. É através dele, que poderemos extrair informações e expor usando esses recursos do sistema.

### Informações de ajuda

Nesse campo é possível incluir um texto que ajudará o usuário a preenche-lo. Abaixo, um exemplo de dois campos: um campo sem informações de ajuda e outro com esse campo configurado:

[![informacoes_ajuda.gif](http://wiki.agilityflow.io/uploads/images/gallery/2019-02-Feb/informacoes_ajuda.gif)](http://wiki.agilityflow.io/uploads/images/gallery/2019-02-Feb/informacoes_ajuda.gif)

### Validação

Nessa parte, é possível configurar validações dos dados inseridos pelo usuário, garantindo um padrão de preenchimento.

> Como deixar um campo obrigatório?

#### Obrigatório

Caso marcado como "sim", não permite o salvamento do fomulário sem o preenchimento desse campo. Ao marcar como "sim" essa opção, são abertos duas outras opções:

##### Obrigatório mesmo que por algum motivo o campo esteja marcado como invisível?

Use essa opção para fazer um campo definido como obrigatório, deixar sua obrigatoriedade caso ele esteja [invisível](#bkmrk-%E2%A0-8).

##### Obrigatório a partir da etapa

Para os formulários com fluxo de etapas, é possível atrelar a obrigatoriedade de um campo à etapa em que se encontra o fluxo.

<iframe allowfullscreen="allowfullscreen" frameborder="0" height="425" src="https://player.vimeo.com/video/328685546" width="760"></iframe>

### Regras de Visibilidade e desativação

Usando essas opções, é possível tornar um campo visível, invisível, ativo ou inativo, e definir quando uma dessas ações deve ocorrer. É possível adicionar várias regras para cada campo.

#### Descrição

É um texto que ajuda a identificar a regra que se está criando. Muito útil quando existem múltiplas regras.

#### Ação

##### Ativar

Deixa o campo disponível para inserção de dados. É o estado padrão do campo.

##### Inativar

Deixa o campo indisponível para inserção de dados.

##### Visível

O campo é mostrado na tela, caso esteja inserido para tal, nas configurações de tela.

##### Invisível

O campo é não é mostrado na tela, mesmo que esteja inserido para tal, nas configurações de tela.

#### A partir da etapa / Até a etapa

Em formulários com etapas, é possível estabelecer que uma regra será aplicada em alguma(s) etapa(s). Para isso, basta selecionar as etapas nos campos "a partir da etapa" e "até a etapa", para definir em que momento do fluxo essa regra vai ser aplicada.

#### Quando

Define em que momento a ação deve acontecer.

##### Sempre

É o padrão do formulário.

##### Condicional

- Tipo de condição  
    Para fazer um validação condicional, estão disponíveis as seguintes condições:  
    
    - Se o campo: compara um campo com um valor, ou com outro campo.  
        Abaixo, uma tabela com os operadores disponíveis para as comparações:  
          
        <table border="1" style="border-collapse: collapse; width: 100%;"><tbody><tr><td style="width: 50%;">**Comparação por valor**</td><td style="width: 50%;">**Comparação por outro campo**</td></tr><tr><td style="width: 50%;">For igual a</td><td style="width: 50%;">É igual ao campo</td></tr><tr><td style="width: 50%;">For maior ou igual a</td><td style="width: 50%;">É diferente do campo</td></tr><tr><td style="width: 50%;">For menor ou igual a </td><td style="width: 50%;"> </td></tr><tr><td style="width: 50%;">For maior que</td><td style="width: 50%;"> </td></tr><tr><td style="width: 50%;">For menor que</td><td style="width: 50%;"> </td></tr><tr><td style="width: 50%;">For diferente de</td><td style="width: 50%;"> </td></tr><tr><td style="width: 50%;">Conter</td><td style="width: 50%;"> </td></tr><tr><td style="width: 50%;">Não conter</td><td style="width: 50%;"> </td></tr></tbody></table>
        
        <p class="callout success">É possível adicionar mais de um condição na mesma regra.</p>
    - Se é um novo formulário: regra será aplicada quando uma nova entrada no formulário estiver sendo criada.
    - Se é edição de formulário: regra será aplicada quando uma entrada no formulário estiver sendo alterada.

### Customização Javascript

Caso a customização desejada, não esteja disponível, ainda assim é possível programá-la utilizando javascript. Para mais detalhes, acesse o [capítulo](http://wiki.agilityflow.io/books/manual-de-customiza%C3%A7%C3%A3o/page/customiza%C3%A7%C3%A3o-javascript "Customização javascript") sobre essa opção.