Documentação

Criar um formulário avançado com condições e variáveis


Criar um formulário complexo com condições e variáveis no Cadulis

Com o Cadulis, você pode ir muito além do simples registro de dados.
Os formulários complexos permitem adaptar os campos a cada contexto de intervenção, recuperar informações automaticamente (através de variáveis dinâmicas) e condicionar a exibição dos campos de acordo com as respostas anteriores.

Este guia acompanha você passo a passo para criar um formulário avançado:

  • Exibição condicional
  • Variáveis dinâmicas
  • Campos invisíveis

1. Acessar o formulário de um tipo de atividade

  • Acesse o menu Catálogo
  • Clique em um tipo de atividade existente (ou crie um novo)
  • Na página “Informações do tipo de atividade”, clique no botão:
    • Formulário de atividade ou
    • Formulário de encerramento
  • Em seguida, clique em Adicionar um campo

2. Adicionar um campo com exibição condicional

  1. Escolha um tipo de campo (ex.: Área de texto)
  2. Insira um código único (ex.: satisfaction_client)
  3. Clique em Adicionar um campo

Você será redirecionado para a página “Editar um campo”:

  • Expanda o menu Exibição
  • Clique em Condições de exibição

Na pop-up:

  • Clique em +
  • Preencha:
    • Campo a testar: lista dos campos já criados
    • Tipo de condição: “Faz parte de” / “Não faz parte de”
    • Valor de comparação: selecione um valor existente
  • Clique em Validar

Você pode então definir um operador lógico E / OU se houver várias condições.

Exemplo

Se você tem um campo client_satisfait com os valores Sim / Não,
você pode exibir um campo de comentário apenas se o cliente responder “Não”.

3. Inserir variáveis nos campos

As variáveis permitem exibir automaticamente informações em um formulário:

  • Data da intervenção
  • Nome do cliente
  • Endereço, interveniente, comentário de encerramento…

Onde inseri-las

  • No campo Descrição (texto exibido acima do campo)
  • No campo Valor padrão
  • Ou em um campo Texto exibido

💡 Clique no ícone “Substituições” na interface para descobrir todas as variáveis disponíveis.


Lista de variáveis disponíveis

As variáveis são delimitadas por chaves {...} e podem ser inseridas em:

  • Descrição
  • Valor padrão
  • Texto exibido

Elas são utilizáveis em campos visíveis, condicionais ou ocultos.

🔧 Variáveis do sistema

Código Exibe… Exemplo
{system.dateTimeNow} Data e hora atuais Assinatura com carimbo de data/hora
{system.isEnvironmentProduction} yes / nada Para diferenciar teste / produção

📆 Variáveis ligadas à intervenção {intervention.*}

Exemplos:

  • {intervention.reference} – Referência da intervenção
  • {intervention.date.dayOfWeek} – Dia da semana
  • {intervention.title} – Título da intervenção
  • {intervention.durationSeconds} – Duração em segundos
  • {intervention.businessUnit.name} – BU associada

🧭 Endereço da intervenção

  • {intervention.address}
  • {intervention.address.zipCode} – Código postal
  • {intervention.address.latitude} / {longitude} – Coordenadas GPS

👥 Cliente {intervention.customer.*}

  • {intervention.customer.name} – Nome
  • {intervention.customer.email} – Email
  • {intervention.customer.custom.niveau_confiance} – Campos personalizados do cliente

🙋 Interveniente {intervention.assignedUsers.*}

  • {intervention.assignedUsers.name} – Nome completo
  • {intervention.assignedUsers.email} – Email

✅ Encerramento {intervention.report.*}

  • {intervention.report.status} – OK / KO
  • {intervention.report.comment} – Comentário final

🔄 Intervenções relacionadas

  • {intervention.parent.date} – Data da missão principal
  • {intervention.container.*} – Informações de uma missão “container”

👤 Usuário conectado {user.*}

  • {user.firstName} / {user.lastName}
  • {user.email}

4. Criar um campo oculto (não visível para o interveniente)

Ao adicionar um campo, selecione Campo oculto.

Este campo será:

  • Invisível para o interveniente
  • Utilizável em exportações, relatórios ou lógica condicional

💡 Ideal para transferir valores entre atividade e encerramento sem perturbar a interface do usuário.


5. Dicas avançadas e casos de uso inspiradores

  • Campo de resumo:
    Intervenção em {intervention.date} para {intervention.customer.name}

  • Nome do interveniente por padrão:
    Valor padrão = {intervention.assignedUsers.name}

  • Símbolo conforme resposta:
    {condition,champ_sécurité,OK,✓,✗}

  • Anonimizar um dado:
    {ano,customer.email}


✅ Boas práticas

✔️ Crie primeiro os campos de controle (ex. Sim / Não) antes dos campos condicionais
✔️ Dê códigos legíveis aos seus campos (controle_securite)
✔️ Teste seu formulário com o botão Testar
✔️ Use separadores horizontais para organizar os blocos