Skip to main content

Botão Customizado

Caso seja necessário uma ação no formulário que não exista no agilityflow, é possível criar um botão. Esse botão, executa um código javascript personalizado, que deve ser criado pelo usuário. Para a configuração desse campo, é necessário conhecimento de javascript, já que qualquer ação com esse botão é 100% customizada. 

Grupo de informações

Dentro das configurações, é possível alterar o grupo de informação 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.

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:

      Comparação por valorComparação por outro campo
      For igual aÉ igual ao campo
      For maior ou igual aÉ diferente do campo
      For menor ou igual a  
      For maior que 
      For menor que 
      For diferente de 
      Conter 
      Não conter 

      É possível adicionar mais de um condição na mesma regra.

    • 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

A parte mais importante do botão customizado é a programação em javascript. É com ela que o botão será capaz de executar alguma ação no formulário.

Com a customização em Javascript, as possibilidade são inúmeras. No exemplo abaixo, o botão customizado, está configurado para abrir o Whatsapp Web, e iniciar uma conversa com o número cadastrado no formulário com um texto padrão preenchido em outro campo.

var nome = $("#nome").val();
var fone = $("#telefone").val();
var texto = $('[campo-id="05710ddf-9af9-7a0d-8c85-5382c2eb8eb2"]').text();

if (nome === null)
    nome = "";

if (fone !== null)
    fone = fone.replaceAll(/\(/,"").replaceAll(/\)/,"").replaceAll(/-/,"").replaceAll(/ /,"");

if (texto === null)
    texto = "";
else
{
    texto = texto.replace("{{nome}}",nome);
    
    var nomes = nome.split(' ');
    var primeironome = nomes[0];
    texto = texto.replace("{{primeironome}}",primeironome);
    
    var hoje = new Date();
    var hora = hoje.getHours();
    var s = "";
    
    if (hora < 12) 
      s = 'bom dia';
    else if (hora < 18) 
      s = 'boa tarde';
     else 
      s = 'boa noite';
    
    
    texto = texto.replace("{{saudacao}}",s);
    
}

window.open("https://web.whatsapp.com/send?phone=55"+fone+"&text="+texto);

Explicando o código:

var nome = $("#nome").val();
var fone = $("#telefone").val();

Obtém-se os valores dos campos nome e telefone. Note que esses nomes, são exatamente os nomes definidos na configuração Coluna Banco de dados (SQL).