Artículo
· 14 nov, 2019 Lectura de 4 min

Descarga ligera a EXCEL

¡Hola a tod@s!

Buscando en la Comunidad propuestas para trabajar con datos organizados en hojas EXCEL, de forma sencilla, para ofrecer a los usuarios finales, encontré este buen artículo sobre el tema: Tips & Tricks - SQL to Excel, que introduce un concepto importante: "EXCEL puede interpretar tablas HTML y mostrarlas de la forma habitual"
¡Genial!
Pero el resultado está en tu servidor y solo tú puedes llevarlo a tu usuario remoto, donde quiera que esté.
Esto podría ser un problema para ser resuelto usando REST o WebServices.

En otro sitio, se propuso usar ZENreports. Es una buena herramienta, con una amplia gama de opciones y funcionalidades.
Su punto débil:  ZENreports no está incluida en una licencia estándar típica, sino que requiere una extensión de licencia.
Además, no está disponible en algunas versiones más antiguas de Caché. Así que podría ser necesario hacer una actualización.
También puede que tengas que discutir con tu responsable financiero acerca de la rentabilidad de esta inversión y de otros asuntos comerciales similares.
Por último: El resultado está en tu servidor y tendrás que transferirlo a tu usuario remoto donde quiera que esté.
Igual que antes.

Siguiente método: Usar Activate para escribir en EXCEL directamente a través de DLL estándares.
, obtienes todo lo que necesitas y mucho más que no quieres y no necesitas, porque EXCEL es enorme.
He visto implementaciones que tenían un envoltorio (wrapper) C# en medio, para filtrar las funcionalidades no deseadas.
¡BIEN! Tienes todo el control.
¿Pero realmente quieres tener una instalación completa de EXCEL en tu servidor Windows? ¿Y con su licencia necesaria?
¿Junto con el riesgo impredecible de cambios repentinos del producto, a los que nos tiene acostumbrados Microsoft?
Por último: El resultado está otra vez en tu servidor y tendrás que transferirlo a tu usuario remoto donde quiera que esté.
Igual que antes.

Otra propuesta: Squirrel
¡Ahora el envío a los usuarios estaría resuelto! Esta es una buen solución para usuarios expertos que entienden SQL.
Pero hay que tener en cuenta dos cosas:
- Obtener la versión correcta instalada en el equipo del usuario. Un problema del número de usuarios.
- Gestionar permisos de acceso SQL para tener suficientes privilegios para tener éxito y a la vez evitar el mal uso.
Esto es un estándar con bases de datos relacionales. Pero no lo he visto muy frecuentemente con Caché.

¿Dónde está la exportación ligera a EXCEL ?

Después de esa investigación, volví al pasado.
El viejo y conocido CSP está bien equipado para producir tablas HTML aceptadas por EXCEL como entradas.
Con los navegadores modernos, ni siquiera necesitas las etiquetas <head> <body>.
Por lo tanto, el código necesario alrededor del conjunto de resultados SQL es realmente pequeño.
Y puedes agregar cualquier formato que necesites, ya sea con HTML o en SQL.

El truco final para mover tu tabla desde el navegador a EXCEL:
En el método OnPreHTTP heredado de %CSP.Page, establecer %response.ContentType="application/vnd.ms-excel"

Ahora, cuando llames a la clase con tu navegador, se te preguntará si abrirlo o guardarlo.
Después, como la extensión es .cls, se te solicitará permiso para que el programa lo abra.

Y si seleccionas EXCEL, la tabla está lista para que el usuario trabaje con ella.

 

Resumen:

Esto podría ser una solución sencilla para evaluar consultas SQL estáticas.
Es muy adecuado para atender a una amplia población de usuarios muy distribuida.

- No requiere una instalación adicional de EXCEL en el servidor de Caché 
- No requiere una nueva versión de Caché + actualizaciones de licencia para ejecutar ZENreports
- No requiere envíos extra para trasladar los resultados a los usuarios
- No requiere software instalado localmente (Squirrel)
- No requiere gestión adicional de permisos de acceso a SQL

Código relativamente pequeño con una estructura sencilla

Ahora comprenderás el por qué del título de este artículo "Descarga ligera".

Puedes descargar mi pequeño ejemplo para el namespace SAMLPES  aquí como .zip  o como .udl

Por último, y no menos importante: No dejes de ver nuestra APP DE LA SEMANA "LIGHT WEIGTH EXCEL DOWNLOAD"!!!!! 

¡Espero que este artículo os haya resultado útil!

Comentarios (0)1
Inicie sesión o regístrese para continuar