Formularios y cuestionarios¶
¿Qué es?¶
El módulo de Formularios permite crear cuestionarios y checklists que los empleados deben completar desde la aplicación móvil. Se pueden asignar a empleados individuales, por proyecto o por zona. Desde el portal se gestionan los cuestionarios (estructura de preguntas), se asignan a los empleados y se consultan las respuestas con estadísticas de completitud.
Vista principal — Lista de cuestionarios¶
La tabla muestra todos los cuestionarios con las siguientes columnas:
- Cuestionario — Título del cuestionario en negrita con la descripción debajo en texto pequeño gris. Ancho máximo 320 px, truncado.
- Estado — Badge de color según el estado del cuestionario (form-level state).
- Asignados — Total de empleados asignados para completar el cuestionario. Alineado a la derecha.
- Completados — Total de empleados que ya enviaron sus respuestas. Alineado a la derecha.
- Progreso — Barra de progreso visual con el porcentaje de completitud:
- Verde — 80% o más.
- Ámbar — Entre 40% y 79%.
- Rojo — Menos del 40%. Ancho 180 px.
- Preguntas — Número total de preguntas en el cuestionario. Alineado a la derecha.
- Creado — Fecha de creación en formato AAAA-MM-DD. Ancho 110 px.
Al hacer clic en cualquier fila, se navega a la página de resultados del cuestionario (forms-results/{id}).
Filtros¶
- Buscar por título o descripción... — Campo de texto libre.
- Estado — Selector con opciones:
Todos,Borrador,Abierto,Cerrado. (Los estados Pendiente y Finalizado existen en respuestas individuales pero no en este filtro). - Activo — Selector:
Todos,Activos,Inactivos.
Ordenación por defecto¶
Ordenada por fecha de creación descendente.
Estados de un cuestionario (form-level)¶
| Estado | Badge | Descripción |
|---|---|---|
| Borrador | Gris | En construcción, no visible para empleados |
| Abierto | Verde | Disponible para que los empleados respondan |
| Cerrado | Rojo | Ya no acepta nuevas respuestas |
| Pendiente | Ámbar | Asignado pero el empleado no ha empezado (solo en respuesta individual) |
| Finalizado | Azul claro | El cuestionario terminó (solo en respuesta individual) |
Estados de una respuesta individual¶
| Estado | Badge | Descripción |
|---|---|---|
| Nuevo | Gris | Asignado, el empleado no ha abierto el cuestionario |
| En curso | Ámbar | El empleado empezó pero no lo envió |
| Completado | Verde | El empleado envió todas las respuestas |
Acciones en la lista¶
Botón "Nuevo cuestionario"¶
Visible con permiso forms: create. Navega al constructor de cuestionarios (forms-detail sin ID).
Exportar¶
Botón de exportación. Descarga un archivo cuestionarios con la lista de cuestionarios y sus estadísticas.
Constructor de cuestionarios (forms-detail)¶
Página de creación y edición de cuestionarios. Se accede haciendo clic en Nuevo cuestionario o desde los resultados al editar un cuestionario existente.
Metadatos del cuestionario¶
- Título — Nombre del cuestionario (obligatorio).
- Descripción — Texto introductorio que verá el empleado antes de comenzar.
- Mensaje de finalización (
description_done) — Texto que verá el empleado al enviar sus respuestas. - Estado — Selector:
Borrador,Abierto,Cerrado. - Activo — Toggle para activar/inactivar el cuestionario.
Tipos de pregunta disponibles¶
| Tipo | Descripción |
|---|---|
Opción simple (simple_choice) |
Una sola respuesta de una lista |
Opción múltiple (multiple_choice) |
Varias respuestas de una lista |
Texto corto (char_box) |
Campo de texto de una línea |
Texto largo (text_box) |
Campo de texto multilínea |
Numérico (numerical_box) |
Solo números |
Fecha (date) |
Selector de fecha |
Escala (scale) |
Escala numérica (ej. del 0 al 10) |
Matriz (matrix) |
Tabla de filas × columnas con opciones |
Estructura de preguntas¶
Cada pregunta tiene:
- Texto de la pregunta — Enunciado.
- Descripción — Texto explicativo opcional.
- Obligatorio — Toggle para hacer la pregunta obligatoria.
- Opciones de respuesta — Para tipos simple_choice y multiple_choice: lista editable de opciones.
Configuraciones avanzadas (botón "Avanzado"):
- Validación de rango — Para tipos numérico y escala: valor mínimo y máximo aceptados.
- Validación de longitud — Para texto: longitud mínima y máxima de caracteres.
- Validación de email — Para texto corto: verifica formato de email.
- Rango de fechas — Para tipo fecha: fecha mínima y máxima permitidas.
- Mensaje de error de validación — Texto a mostrar si la respuesta es inválida.
- Permitir comentarios — Toggle para agregar un campo de comentario libre.
- Mensaje del comentario — Label del campo de comentario.
- Contar comentario como respuesta — Toggle.
- Pregunta condicional — Muestra la pregunta solo si una pregunta anterior tiene una respuesta específica (triggering_question_id + triggering_answer_id).
Para tipo Escala¶
Además de rango mínimo/máximo, acepta etiquetas para los extremos (ej. "Muy malo" — "Excelente").
Para tipo Matriz¶
Define filas (opciones de la izquierda) y columnas (opciones de la parte superior) de la tabla.
Advertencias al editar cuestionarios con respuestas¶
Si el cuestionario ya tiene respuestas (responsesCount > 0), el sistema advierte que modificar preguntas o respuestas puede afectar la trazabilidad histórica. Las advertencias aparecen específicamente al eliminar preguntas o respuestas que ya existían en el sistema.
Guardar cuestionario¶
Botón Guardar en la barra superior. Si hay cambios sin guardar (isDirty), el sistema advierte antes de navegar fuera.
Resultados del cuestionario (forms-results)¶
Al hacer clic en un cuestionario de la lista, se abre la página de resultados con tres pestañas:
Encabezado¶
- Nombre del cuestionario.
- Estado del cuestionario (badge clickeable con permiso de edición).
- Botón Editar cuestionario — Navega al constructor.
- Estadísticas rápidas: total asignados, completados, en curso, sin responder.
Pestaña Resumen¶
Vista agregada de todas las respuestas por pregunta:
- Para cada pregunta muestra:
- Texto de la pregunta.
- Tipo de pregunta.
- Gráfico/estadística de las respuestas (distribución de opciones, promedios de escala, etc.).
Pestaña Respuestas¶
Tabla con cada respuesta individual. Columnas:
- Empleado — Nombre + código de empleado.
- Estado — Badge: Nuevo / En curso / Completado.
- Inicio — Fecha y hora de inicio en formato
AAAA-MM-DD HH:MM. - Última actualización — Fecha y hora de la última modificación.
- Score — Puntuación total (si el cuestionario tiene sistema de puntos). Si supera el umbral: verde en negrita. Si no supera: rojo en negrita.
Filtros de la pestaña Respuestas:
- Buscar empleado, código... — Campo de texto libre.
- Estado — Selector: Todos, Nuevo, En curso, Completado.
Al hacer clic en una fila se abre el modal de detalle de respuesta con todas las preguntas y sus respuestas:
- Para opción simple/múltiple: badge azul con la opción seleccionada.
- Para matriz: formato Fila → Columna.
- Para numérico/escala: valor monoespaciado.
- Para fecha: fecha formateada.
- Para texto largo: texto con saltos de línea respetados.
- Si la pregunta fue omitida: texto en cursiva "Omitida".
Pestaña Asignaciones¶
Lista de empleados asignados con opción de buscar, paginar y desasignar.
Panel de asignación lateral (slide-over):
Botón Asignar abre el panel deslizante con tres modos de asignación: - Por empleados — Selección múltiple de empleados por nombre (con chips). - Por proyecto — Selección de proyectos (asigna a todos los empleados del proyecto). - Por zona — Selección de zonas (asigna a todos los empleados de la zona).
Campos comunes: - Fecha límite — Fecha hasta la que los empleados deben completar el cuestionario (opcional). - Vista previa — Botón que muestra cuántos empleados se asignarán con la selección actual. - Botón Asignar — Ejecuta la asignación.
Modal de cambio de estado del cuestionario¶
Al hacer clic en el badge de estado en la página de resultados (con permiso):
- Muestra estado actual → estado nuevo.
- Opciones:
Borrador,Abierto,Cerrado. - Campo de notas opcional.
- Botón Confirmar cambio.
Permisos¶
| Acción | Permiso requerido |
|---|---|
| Ver cuestionarios | forms: view |
| Crear cuestionario | forms: create |
| Editar cuestionario | forms: edit |
| Exportar | forms: export |
Páginas relacionadas¶
- Empleados — Los empleados que reciben las asignaciones.
- Proyectos — Asignación masiva por proyecto.
- Zonas — Asignación masiva por zona.
Preguntas frecuentes¶
¿Puedo crear un cuestionario solo para ciertos empleados? Sí. Usa la pestaña Asignaciones en los resultados del cuestionario y asigna por empleados individuales, proyecto o zona.
¿Qué pasa si edito un cuestionario que ya tiene respuestas? El sistema advierte que los cambios pueden afectar la trazabilidad. Las respuestas ya enviadas no se modifican, pero si eliminas preguntas, sus respuestas quedan sin referencia.
¿Los empleados pueden ver el cuestionario si está en Borrador? No. Solo los cuestionarios en estado Abierto son visibles para los empleados en la app.
¿Qué es la puntuación (Score) en las respuestas? Si el cuestionario tiene preguntas de opción simple/múltiple con respuestas correctas marcadas, el sistema calcula un puntaje total. Se muestra en verde si supera el umbral de aprobación o en rojo si no supera.
¿Puedo ver el progreso en tiempo real? La página de resultados muestra las estadísticas actuales al cargar. No se actualiza automáticamente; recarga la página para ver el progreso más reciente.