Reportes¶
¿Qué es?¶
El módulo de Reportes genera y descarga documentos de análisis en PDF o Excel. Los reportes se generan en segundo plano en el servidor y quedan disponibles en la lista de reportes del usuario hasta que los elimine. Actualmente soporta dos categorías principales: Rondas (actividad de guardias en puntos de control) y Minuta de Novedades (registros del logbook/bitácora).
Vista principal¶
La página está dividida en dos secciones:
- Formulario "Nuevo reporte" — Panel superior con todos los filtros y el botón de generación.
- Lista "Reportes generados" — Tabla inferior con los reportes ya creados por el usuario.
Formulario de nuevo reporte¶
Campo: Tipo¶
Selector que determina la categoría del reporte:
| Valor | Descripción |
|---|---|
rondas |
Rondas — actividad de guardias en puntos NFC/QR |
minuta_novedades |
Minuta de Novedades — registros del logbook |
Al cambiar el tipo, el campo Subtipo se reinicia al primer subtipo disponible.
Campo: Subtipo¶
Depende del Tipo seleccionado:
Subtipos de Rondas:
| Valor | Etiqueta |
|---|---|
reporte_general |
Reporte General |
marcacion_por_empleado |
Marcación por Empleado |
puntos_marcados |
Puntos Marcados |
turnos_sin_marcar_empleado |
Turnos Sin Marcar |
cumplimiento_programa |
Cumplimiento de Programa |
tag_sin_asignacion |
Tag Sin Asignación de Turno |
Subtipos de Minuta de Novedades:
| Valor | Etiqueta |
|---|---|
all |
Todas |
GENERAL |
General |
VEHICLE_ACCESS |
Acceso Vehicular |
VEHICLE_NEWS |
Novedades Vehiculares |
VEHICLE_CHECK |
Inspección Vehicular |
VISITOR |
Visitantes |
CORRESPONDENCE |
Correspondencia |
HANDOVER |
Entrega de Turno |
Campo: Formato¶
Selector de formato de salida con dos botones tipo toggle:
- PDF — Genera un documento PDF que se puede visualizar en el navegador.
- Excel — Genera un archivo
.xlsxque se descarga directamente.
Campos de fecha (obligatorios)¶
- Fecha inicio — Selector DD/MM/AAAA. Por defecto: hace 30 días.
- Fecha fin — Selector DD/MM/AAAA. Por defecto: hoy.
El sistema envía el rango como startDate + " 00:00:00" y endDate + " 23:59:59".
Campo: Agrupar por¶
Solo visible cuando el tipo es Rondas y el subtipo es Reporte General:
| Valor | Descripción |
|---|---|
none |
Sin agrupación |
point |
Agrupar por punto de control |
guard |
Agrupar por guardia |
Campos opcionales de filtro¶
- Zona — Autocompletado de zonas. Al seleccionar una zona, filtra los proyectos disponibles. Se puede limpiar con el botón X.
- Proyecto — Autocompletado de proyectos. Filtra por zona si se seleccionó. Se puede limpiar con botón X.
- Empleado — Autocompletado de empleados. Solo visible cuando:
- Tipo = Rondas + Subtipo = "Cumplimiento de Programa", o
- Tipo = Minuta de Novedades (cualquier subtipo).
Filtros adicionales para Minuta de Novedades¶
Estos campos aparecen según el subtipo seleccionado:
| Campo | Visible cuando | Descripción |
|---|---|---|
Asunto (logbookSubject) |
Tipo General o Todas | Texto libre para filtrar por asunto de la minuta |
Placa (logbookPlate) |
Tipos vehiculares o Todas | Número de placa del vehículo |
Edificio / Unidad (logbookBuilding) |
Tipos vehiculares, Visitantes, Correspondencia o Todas | Nombre del edificio o unidad |
Documento visitante (logbookVisitorDoc) |
Visitantes o Todas | Número de documento del visitante |
Generación del reporte¶
Al hacer clic en "Generar reporte" (requiere permiso reports: create):
- El sistema valida que las fechas estén completas. Si no: "Las fechas de inicio y fin son obligatorias".
- Si tipo es Rondas y no hay subtipo: "Selecciona un subtipo de reporte".
- El botón cambia a spinner con texto "Generando... Ns" (contador de segundos transcurridos).
- El servidor procesa el reporte en segundo plano.
- El sistema hace polling cada 3 segundos verificando si el reporte está listo.
- Cuando el nuevo reporte aparece en la lista, el spinner se detiene y la lista se actualiza automáticamente.
- Tiempo máximo de espera: 5 minutos. Si se supera: "El reporte está tardando demasiado. Intenta refrescar la lista manualmente."
Errores posibles durante generación¶
- "Ya hay un reporte en proceso" — Solo puede haber un reporte generándose por usuario a la vez. Muestra el tipo y subtipo del reporte en curso.
- "No se encontraron datos para los filtros seleccionados" — No hay datos en el rango de fechas con los filtros aplicados.
- "No se pudo conectar con el servidor" — Error de red.
Durante la generación aparece el mensaje: "Procesando en segundo plano — la lista se actualizará automáticamente".
Lista de reportes generados¶
Columnas de la tabla¶
- Reporte — Nombre del archivo (o nombre personalizado) en la primera línea. Debajo, etiqueta del tipo y subtipo en formato "Rondas · Reporte General" o "Minuta · Visitantes".
- Formato — Badge:
PDF— Badge rojoExcel— Badge verde- Fecha — Fecha y hora de generación en formato
AAAA-MM-DD HH:MM. - Acciones — Botones por fila:
- Ver (solo PDF) — Abre el PDF en una nueva pestaña del navegador.
- Descargar (PDF con permiso
reports: export, o Excel siempre) — Descarga el archivo. - Eliminar (requiere
reports: delete) — Confirmación con diálogo. Elimina el reporte permanentemente. No se puede deshacer.
Barra de herramientas de la lista¶
- Buscar reporte... — Búsqueda en tiempo real por nombre de archivo y etiqueta del tipo.
- Refrescar — Recarga la lista manualmente desde el servidor.
Paginación¶
15 reportes por página. Paginación con números de página, botones anterior/siguiente y resumen "Mostrando X a Y de Z reportes".
Permisos¶
| Acción | Permiso requerido |
|---|---|
| Ver la página | reports: view |
| Generar reporte | reports: create |
| Descargar PDF | reports: export |
| Eliminar reporte | reports: delete |
Páginas relacionadas¶
- Monitor en vivo — El monitor muestra actividad de guardias en tiempo real; los reportes de Rondas son el historial de esa actividad.
- Minutas (Logbook) — Los reportes de Minuta de Novedades se generan a partir de los registros del logbook.
- Turnos y horarios — El subtipo "Cumplimiento de Programa" cruza las rondas con la programación de turnos.
- Zonas y Proyectos — Los filtros de zona y proyecto en Reportes determinan el alcance del análisis.
Preguntas frecuentes¶
¿Cuánto tiempo tarda en generarse un reporte? Depende del volumen de datos y el rango de fechas. Reportes de pocos días tardan segundos; reportes de meses o con muchos empleados pueden tardar varios minutos. El contador de segundos muestra el tiempo transcurrido.
¿Puedo generar dos reportes al mismo tiempo? No. Solo puede procesarse un reporte a la vez por usuario. Si intentas generar uno mientras otro está en proceso, el sistema muestra el mensaje "Ya hay un reporte en proceso".
¿Los reportes generados son visibles para otros usuarios? No. Cada usuario ve únicamente sus propios reportes. Los reportes son privados y están asociados al empleado que los generó.
¿Por qué aparece "No se encontraron datos"? El rango de fechas o los filtros aplicados no tienen datos en el sistema. Verifica que el proyecto, zona o empleado seleccionado tenga registros en ese periodo.
¿Los reportes tienen vencimiento o se eliminan automáticamente? No hay vencimiento automático visible desde el portal. Los reportes permanecen hasta que el usuario los elimina manualmente con el botón "Eliminar" de cada fila.
¿Puedo ver un reporte de Excel en el navegador? No directamente. Los archivos Excel se descargan automáticamente. Solo los PDFs se abren en una nueva pestaña del navegador.
¿El reporte de "Cumplimiento de Programa" cruza con los turnos asignados? Sí. Este subtipo de Rondas compara los puntos marcados por el guardia con los puntos esperados según la programación de turnos, calculando el porcentaje de cumplimiento.
¿Puedo filtrar la Minuta de Novedades por placa y visitante al mismo tiempo? Sí. Al seleccionar subtipo "Todas", todos los campos de filtro adicionales (Asunto, Placa, Edificio, Documento visitante) aparecen simultáneamente y se aplican en conjunto.