Mejores prácticas para personalizar reportes

Debe personalizar los reportes teniendo en cuenta el rendimiento y el ahorro de tiempo.

Esta guía explica qué se debe tener en cuenta al personalizar los reportes.

Parámetros de Usuario y Evento

  • Siempre que desee personalizar o crear un reporte desde cero, debe asegurarse de que al consultar datos de un Proveedor de Datos limite la cantidad de datos a procesar. Para ello, debe utilizar parámetros tipados que deben ser un Usuario y un Evento al crear un reporte basado en eventos.
  • Necesitamos estos parámetros por dos razones, primero porque su uso permite el procesamiento por lotes. El procesamiento por lotes es un proceso automático que "prepara" la información de un reporte guardado cada noche, por lo que cuando desee generarlo, los datos estarán listos. Si no utiliza parámetros tipados, el procesamiento por lotes no procesará nada y cuando desee generar los reportes tardará más tiempo en estar listo. La segunda razón es que el uso de parámetros tipados permite la búsqueda indexada en el proveedor de datos, lo que hará que la ejecución de la consulta sea más rápida.
  • Hay una función en el editor de consultas para incluir estos parámetros. Cuando la use, recuerde seleccionar como tipo de parámetro "De Consulta" ya que este es el único tipo que el marco entenderá. Luego, para el parámetro de usuario, debe seleccionar un valor de las consultas del sistema Usuarios, Etiquetas o UsuariosEtiquetas y para el parámetro de evento use la consulta del sistema ReglasEventos.

parametereditor.png

  • Si necesita limitar el resultado para los parámetros, entonces debe crear otra consulta donde pueda solicitar estos valores. Pensemos que desea seleccionar como parámetro tipado de Usuario solo la lista de dispositivos en su aplicación. Suponiendo que tiene una etiqueta llamada "Dispositivos" en su aplicación, entonces podría crear esta consulta adicional:
SELECT DISTINCT
    Users.UserID,
    Users.Name
FROM Users
    JOIN TagUsers ON TagUsers.UserID = Users.UserID
    JOIN Tags ON TagUsers.TagID = Tags.TagID
WHERE Tags.Name = 'Devices'

Después, deberá agregar el parámetro en el editor de consultas de la misma manera que se explicó antes, pero esta vez seleccionando su propia consulta en lugar de una consulta del sistema.

¡Incluir estos parámetros en su consulta la hará mucho más rápida! Y la última versión de GpsGate Server no le permitirá guardar su consulta si no especifica estos parámetros tipados. Así que asegúrese de usarlos y de corregir esto en reportes anteriores que haya creado.

Gestión de Datos

  • Creación de nuevos Proveedores de Datos. Si necesitas crear un nuevo Proveedor de Datos, ten en cuenta que cuantos más Proveedores de Datos utilices, más crecerá tu base de datos y la mayoría de estos datos se duplicarán si solo estás modificando un poco los predeterminados. Entonces, si realmente necesitas hacerlo, crearás una copia de uno existente. Intenta deshabilitar el original de todos los demás reportes que lo utilizan. El objetivo principal de mantener el número de Proveedores de Datos al mínimo es evitar datos redundantes y esto te ayudará a mantener el tamaño de tu base de datos controlado.
  • Herramienta de limpieza. GpsGate Server incluye una herramienta de limpieza para deshacerse de la información antigua. Si navegas a SiteAdmin/Applications/Cleanup y seleccionas una de tus aplicaciones, entonces tienes la opción de seleccionar por cuánto tiempo deseas conservar los datos de tu reporte. Esto no significa que los datos desaparecerán para siempre, pero si ejecutas ese reporte nuevamente, los datos serán reprocesados. Así que intenta encontrar un equilibrio entre rendimiento y disponibilidad y piensa si todavía es útil conservar datos antiguos ya procesados.

Gestión de Consultas

Estas son 2 cosas que no necesitas hacer en tu consulta.

  • Ordenar el resultado de tu consulta es inútil. El editor de diseño te permite ordenar el resultado haciendo clic derecho al inicio de la fila. Selecciona la opción “Editar Grupo” y podrás agrupar y ordenar tus resultados.

sorting.png

  • No selecciones más de lo que necesitas. Bastante simple pero efectivo, cuanta menos información solicites, menos tiempo tomará la consulta. Si hay algunos datos que no necesitas, no los selecciones. Siempre intenta revisar tu consulta cuando termines de escribirla. Querrás eliminar cualquier cosa que al final no hayas utilizado.

A veces lo básico es lo que marca la diferencia y te ayuda a ganar tiempo al generar un reporte.