Este artículo presenta SQLVantage, un sistema de reportes web ligero y listo para usar que centraliza todo el ciclo de vida de un informe: consulta SQL, formulario de parámetros y presentación de resultados. Se describen su instalación (un solo ejecutable, sin dependencias adicionales), la gestión de usuarios, responsabilidades, reportes y licencias desde la perspectiva del administrador, así como el diseñador de reportes con sus módulos SQL, FORM y HTML. También se abordan el flujo de trabajo del usuario final, el procesamiento asíncrono de solicitudes, los detalles de diseño destacables y los escenarios de uso recomendados.
Una herramienta de reporting web lista para usar, que te ayuda a resolver con facilidad todo el flujo: consulta de datos, formularios de parámetros y presentación de resultados.
En la operación diaria de las empresas, los informes de datos son una pieza indispensable. Ya sea para conciliaciones financieras, análisis de ventas o monitoreo operativo, casi todos los departamentos dependen de salidas de reportes de todo tipo.
Sin embargo, en la práctica solemos encontrarnos con estos problemas:
Por eso, un sistema de reportes ligero capaz de gestionar de forma centralizada las definiciones de reportes, admitir consultas parametrizadas, generar automáticamente resultados en varios formatos y ofrecer aislamiento de permisos se vuelve realmente necesario.
Hace poco conocí un sistema de reportes llamado SQLVantage (versión v1.0.2, publicada el 2026-07-15) que resuelve precisamente estos puntos de dolor. Su filosofía de diseño es muy clara: mediante un flujo estandarizado, encadena las tres piezas de «consulta SQL, formulario de parámetros y presentación de resultados», de modo que todo el ciclo de vida del informe quede trazable.
En este artículo, basándome en su documentación oficial, repasaré su diseño central y sus rutas de uso, para ayudarte a evaluar rápidamente si encaja con tu equipo.
SQLVantage es un sistema de reportes con arquitectura puramente web. Sus características principales son:
| Concepto | Descripción |
|---|---|
| Reporte | Un reporte = consulta SQL + formulario de parámetros (FORM) + presentación de resultados (HTML) + tres archivos JSON de configuración de formato, adscrito a una «responsabilidad» |
| Responsabilidad | Directorio de clasificación de reportes, equivalente al concepto de responsabilidad de Oracle EBS, usado para agrupar y mostrar los reportes por módulo al usuario |
| Parámetro | Condiciones de consulta (fecha, cliente, organización, etc.); al enviarse, el usuario los vincula a la ejecución del SQL como parámetros con nombre |
| Solicitud | Una tarea concreta de ejecución de un reporte por parte del usuario; el sistema la ejecuta de forma asíncrona y genera el archivo de resultados |
| Licencia | Archivo License que controla el límite de cantidad de reportes y el periodo de uso |
El sistema distingue dos roles, con entradas y permisos totalmente separados:
El método de despliegue de SQLVantage puede calificarse de muy pragmático.
Descomprime el paquete de distribución en cualquier directorio (por ejemplo D:\SQLVantage) y haz doble clic en SQLVantage.exe para iniciarlo. Por defecto escucha en 127.0.0.1:8080; abre el navegador y ya puedes acceder.
Descomprime en /opt/sqlvantage, otorga permisos de ejecución y ejecútalo en segundo plano con nohup o systemd. Igualmente, el puerto por defecto es el 8080.
En el primer arranque, el sistema realiza automáticamente las siguientes acciones, algo muy amable para el personal de operaciones:
Este diseño reduce al mínimo el coste de «probar desde cero».
El administrador puede crear usuarios normales (rol normal) y establecer su estado como active o inactive (al despedir a alguien basta con deshabilitarlo, sin eliminar la cuenta).
La gestión de responsabilidades corresponde al concepto de responsabilidad de Oracle EBS y también puede crearse manualmente. Cada reporte debe adscribirse a una responsabilidad; así, en el portal del usuario normal, el menú de reportes se muestra agrupado automáticamente por responsabilidad, con una experiencia clara.
Los reportes tienen tres estados:
Un reporte publicado no puede eliminarse directamente: primero hay que cambiarlo a estado borrador o descartado; este diseño evita muy bien los borrados accidentales de reportes en producción.
La página de listado admite «doble clic en la celda para editar directamente» el nombre, la descripción y el estado; un pequeño detalle que mejora la eficiencia operativa.
El archivo de licencia conf/license.dat controla el límite de cantidad de reportes y el periodo de validez. Sin licencia o con la licencia caducada, el sistema solo permite crear como máximo 3 reportes; superado ese límite, no se pueden crear nuevos ni enviar solicitudes.
Este mecanismo resulta muy práctico para la versión comercial o escenarios de prueba interna: conserva toda la funcionalidad pero establece un umbral razonable.
Si hay una función de SQLVantage que merece la pena conocer a fondo, es sin duda su diseñador de reportes.
Descompone el proceso de desarrollo de reportes en tres módulos independientes pero interconectados, y los completa en una sola interfaz.
Entra en la lista de reportes y haz clic en el botón «Código» (morado) de la fila del reporte: se abrirá un diseñador a pantalla casi completa (alrededor del 98%). La interfaz se divide en:
Este diseño de «código a la izquierda + configuración a la derecha + vista previa en tiempo real» resulta muy intuitivo para los desarrolladores.
Se usa la sintaxis de Oracle, con marcadores de posición de parámetros con nombre :nombre_parametro para las condiciones de consulta:
SELECT company_name, ou_id, amount FROM fnd_ou_tl WHERE ou_id = :P_OU_ID
Aquí, P_OU_ID debe coincidir exactamente con el nombre del parámetro definido en el módulo FORM.
En el panel derecho se puede configurar para cada columna:
Esta configuración determina directamente el profesionalismo de la exportación a Excel: encabezados localizados, números alineados a la derecha, separador de miles, formato de porcentaje… todo se resuelve aquí de una sola vez.
Dicho de otro modo: basta con configurar aquí los metadatos de columnas para que la calidad de la exportación a Excel no dependa de código adicional en el backend.
Es el punto de entrada de la interacción del reporte. Cada fila de la «tabla de configuración de parámetros» de la derecha define un parámetro de consulta:
| Campo | Descripción |
|---|---|
| Nombre del parámetro field | Debe coincidir exactamente con el :nombre_parametro del SQL |
| Etiqueta visible label | Texto mostrado en el formulario |
| Tipo de componente type | text / number / select / radio / date / month / datetime / hidden / temp |
| Opciones estáticas static_options | Formato clave:valor,clave:valor |
| API dinámica / SQL | Admite marcadores de posición {nombre_variable} para lograr el encadenamiento de parámetros |
Esta es una característica muy práctica del módulo FORM: cuando un desplegable depende de un parámetro anterior (por ejemplo, solo se puede cargar la «lista de departamentos» tras «seleccionar organización»), se puede hacer referencia en api_url o query_sql a marcadores como {P_OU_ID}.
Cuando el usuario cambia el valor del parámetro anterior, el sistema refresca automáticamente las opciones posteriores, sin necesidad de escribir código JavaScript adicional.
En la parte inferior del panel derecho hay además una zona de vista previa en tiempo real: al terminar la configuración de parámetros ya se ve el resultado renderizado, y con un clic se puede «copiar y aplicar» el código HTML generado al editor.
¿En qué forma se presentan al usuario los resultados una vez ejecutado el reporte? El módulo HTML se encarga de definir esta capa.
La «configuración de componentes de vista HTML» del panel derecho admite varios bloques de presentación; cada bloque incluye:
Al final, cuando el usuario descarga el resultado HTML, el sistema renderiza dinámicamente una página completa con tablas, gráficos y tarjetas de KPI, y los parámetros de consulta también se muestran encima del resultado.
Gracias a esta capa, el «lado de presentación» del reporte también se vuelve configurable, y ya no hace falta escribir una página frontend para cada reporte.
Todo el flujo se recorre en una sola línea:
El recorrido del usuario normal es muy sencillo:
Queued (en cola) → Processing (en ejecución) → Success (éxito) → Error (fallo) → Terminated (finalizado por tiempo de espera)
El sistema sondea las tareas en cola cada 3 segundos en segundo plano; el nivel de concurrencia es ajustable y por defecto se ejecutan como máximo 3 tareas simultáneamente. El tiempo de espera por defecto es de 30 minutos y puede ajustarse en la configuración.
SQL, FORM y HTML tienen cada uno dos piezas de datos: el «código» y el «JSON de formato», lo que deja espacio para futuras extensiones como gestión de versiones y reutilización de plantillas.
No se trata de «exportar primero y postprocesar después», sino de que el estilo de Excel se decide en la fase de diseño. Esto significa que el diseñador del reporte controla por completo la calidad de la salida, sin depender de scripts adicionales de segundo procesamiento.
El mecanismo de marcadores de posición implementa la dependencia entre parámetros y reduce la barrera de desarrollo frontend.
Los usuarios normales solo ven sus propios registros de solicitudes; el administrador ve todos. Cuando un usuario autenticado vía ERP envía una solicitud, el sistema valida además los permisos de organización OU/ORG para impedir accesos no autorizados.
Todos los datos de negocio se almacenan en conf/data.dat y los archivos de resultados se generan en el directorio data/. Para migrar basta con copiar los directorios conf/ y data/, todo muy claro.
La impresión general que me deja SQLVantage es: pragmático, contenido y fácil de usar.
No persigue ciegamente ser «grande y completo», sino que, en torno al escenario central del «reporte», encadena en una ruta clara y completa los eslabones clave: gestión de SQL, interacción de parámetros, presentación de resultados y aislamiento de permisos.
Para los equipos que sufren con la gestión de reportes, ofrece una solución de referencia interesante: sirve como herramienta de producción directa y también como ejemplo de estudio para comprender las ideas de diseño de un sistema de reportes web ligero.
Si también buscas un sistema de reportes sencillo, fácil de usar y auto-desplegable, prueba a empezar con SQLVantage.
Este artículo se basa en la documentación oficial de SQLVantage v1.0.2 (publicada el 2026-07-15). Para más detalles, consulta la documentación multilingüe incluida en el proyecto (directorio docs/).