Documentación

Crear un formulario avanzado con condiciones y variables


Crear un formulario complejo con condiciones y variables en Cadulis

Con Cadulis, puedes ir mucho más allá de la simple introducción de datos.
Los formularios complejos permiten adaptar los campos a cada contexto de intervención, recordar información automáticamente (mediante variables dinámicas) y condicionar la visualización de los campos según las respuestas anteriores.

Esta guía te acompaña paso a paso para crear un formulario avanzado:

  • Visualización condicional
  • Variables dinámicas
  • Campos invisibles

1. Acceder al formulario de un tipo de actividad

  • Ve al menú Catálogo
  • Haz clic en un tipo de actividad existente (o crea uno nuevo)
  • En la página “Información del tipo de actividad”, haz clic en el botón:
    • Formulario de actividad o
    • Formulario de cierre
  • Luego haz clic en Agregar un campo

2. Agregar un campo con visualización condicional

  1. Elige un tipo de campo (ej.: Área de texto)
  2. Ingresa un código único (ej.: satisfaction_client)
  3. Haz clic en Agregar un campo

Serás redirigido a la página “Modificar un campo”:

  • Despliega el menú Visualización
  • Haz clic en Condiciones de visualización

En la ventana emergente:

  • Haz clic en +
  • Completa:
    • Campo a evaluar: lista de campos ya creados
    • Tipo de condición: “Forma parte de” / “No forma parte de”
    • Valor de comparación: selecciona un valor existente
  • Haz clic en Validar

Luego puedes definir un operador lógico Y / O si hay varias condiciones presentes.

Ejemplo

Si tienes un campo client_satisfait con los valores Sí / No,
puedes mostrar un campo de comentario solo si el cliente responde “No”.

3. Insertar variables en los campos

Las variables permiten mostrar automáticamente información en un formulario:

  • Fecha de la intervención
  • Nombre del cliente
  • Dirección, técnico, comentario de cierre…

Dónde insertarlas

  • En el campo Descripción (texto mostrado encima del campo)
  • En el campo Valor por defecto
  • O en un campo Texto mostrado

💡 Haz clic en el icono “Sustituciones” en la interfaz para descubrir todas las variables disponibles.


Lista de variables disponibles

Las variables están rodeadas por llaves {...} y pueden insertarse en:

  • Descripción
  • Valor por defecto
  • Texto mostrado

Son utilizables en campos visibles, condicionales o ocultos.

🔧 Variables del sistema

Código Muestra… Ejemplo
{system.dateTimeNow} Fecha y hora actuales Firma con sello de tiempo
{system.isEnvironmentProduction} yes / nada Para diferenciar test / prod

📆 Variables relacionadas con la intervención {intervention.*}

Ejemplos:

  • {intervention.reference} – Referencia de la intervención
  • {intervention.date.dayOfWeek} – Día de la semana
  • {intervention.title} – Título de la intervención
  • {intervention.durationSeconds} – Duración en segundos
  • {intervention.businessUnit.name} – BU asociada

🧭 Dirección de la intervención

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

👥 Cliente {intervention.customer.*}

  • {intervention.customer.name} – Nombre
  • {intervention.customer.email} – Email
  • {intervention.customer.custom.niveau_confiance} – Campos personalizados del cliente

🙋 Técnico {intervention.assignedUsers.*}

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

✅ Cierre {intervention.report.*}

  • {intervention.report.status} – OK / KO
  • {intervention.report.comment} – Comentario final

🔄 Intervenciones relacionadas

  • {intervention.parent.date} – Fecha de la misión principal
  • {intervention.container.*} – Información de una misión “contenedor”

👤 Usuario conectado {user.*}

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

4. Crear un campo oculto (no visible para el técnico)

Al agregar un campo, selecciona Campo oculto.

Este campo será:

  • Invisible para el técnico
  • Explotable en exportaciones, informes o lógica condicional

💡 Ideal para transferir valores entre actividad y cierre sin afectar la interfaz de usuario.


5. Consejos avanzados y casos de uso inspiradores

  • Campo resumen:
    Intervención del {intervention.date} para {intervention.customer.name}

  • Nombre del técnico por defecto:
    Valor por defecto = {intervention.assignedUsers.name}

  • Símbolo según respuesta:
    {condition,champ_sécurité,OK,✓,✗}

  • Anonimizar un dato:
    {ano,customer.email}


✅ Buenas prácticas

✔️ Crea primero los campos de control (ej. Sí / No) antes que los campos condicionales
✔️ Da códigos legibles a tus campos (controle_securite)
✔️ Prueba tu formulario con el botón Probar
✔️ Utiliza separadores horizontales para organizar los bloques