Uecko_ERP/tools/fastreport-cli
2026-01-13 14:36:37 +01:00
..
publish FastReportCliGenerator 2026-01-13 14:36:37 +01:00
.gitignore Utilidad FastReport 2026-01-08 13:09:24 +01:00
FastReportCliGenerator.csproj FastReportCliGenerator 2026-01-13 14:36:37 +01:00
FastReportCliGenerator.slnx FastReportCliGenerator 2026-01-13 14:36:37 +01:00
Program.cs FastReportCliGenerator 2026-01-13 14:36:37 +01:00
README.md Utilidad FastReport 2026-01-08 13:09:24 +01:00

📘 FastReport CLI — Generador de informes HTML/PDF

Este proyecto es un ejecutable .NET CLI que carga plantillas .frx, inyecta datos en formato JSON usando JsonDataConnection y exporta el informe resultante a HTML. Ideal para integrarse desde otros servicios (p. ej., Node.js) y generar facturas, listados u otros documentos.

🛠️ Requisitos previos

Antes de compilar o ejecutar este proyecto, necesitas:

💡 1. Instalar .NET 10 SDK

.NET 10 es la versión recomendada con soporte moderno (mensajes y descargas oficiales disponibles en la web de Microsoft). Microsoft

🐧 Ubuntu / Linux

  1. Abre una terminal.

  2. Actualiza la caché de paquetes:

  3. Instala el SDK de .NET 10:

  4. Verifica la instalación:

Esto instalará las herramientas necesarias para compilar y ejecutar aplicaciones .NET. Microsoft Learn

Nota: Si no está disponible en los repositorios puede que necesites usar el script oficial dotnet-install.sh o los paquetes binarios de la web de .NET. Microsoft Learn

🪟 Windows

  1. Descarga el instalador del SDK de .NET 10 desde la página oficial de descargas de .NET. Microsoft

  2. Ejecuta el instalador y sigue los pasos.

  3. Verifica con:

Windows instalará todo lo necesario para compilar y ejecutar proyectos .NET.

📁 Estructura del proyecto

El proyecto CLI está bajo una carpeta como:

Este proyecto usa FastReport.OpenSource y JsonDataConnection para leer JSON y producir HTML.

🧱 Compilar el ejecutable

Una vez instalado .NET 10 SDK, abre la terminal o línea de comando en la raíz del proyecto y ejecuta:

Esto compilará el proyecto en modo Release.

📦 Publicar ejecutables (Linux y Windows)

Puedes generar ejecutables independientes (self-contained) para cada plataforma.

🐧 Linux

🪟 Windows

Esto generará binarios en:

Los ejecutables no requieren .NET preinstalado para ejecutarse.

🧪 Ejecutar el generador

Una vez publicado, puedes ejecutar el generador desde shell con:

o en Windows.

📌 Integración desde otras aplicaciones

Puedes invocar este ejecutable desde Node.js u otros servicios usando la ruta y parámetros indicados, por ejemplo usando child_process en Node.js para generar HTML y luego convertirlo a PDF con Puppeteer o similar.

⚠️ Requisitos adicionales en Linux

Si tu reporte usa gráficos o fuentes, puede necesitar librerías gráficas nativas como libgdiplus en Linux para compatibilidad con System.Drawing:

Esto evita errores de carga nativa en tiempo de ejecución (especialmente si FastReport genera gráficos o renderiza texto). (Requisito común para librerías que usan GDI+ en Linux)

🧠 Buenas prácticas

  • Mantén tu .frx y tus datos JSON sincronizados (los campos usados en la plantilla deben estar presentes en tu JSON).

  • Versiona el ejecutable en tus pipelines o CI para que siempre sepas qué versión se está usando.

  • Genera el HTML desde .NET y luego conviértelo a PDF en tu API principal según necesites.

📦 Resumen de comandos útiles

Acción Comando
Instalar .NET 10 SDK en Ubuntu sudo apt install -y dotnet-sdk-10.0 (Microsoft Learn)
Ver versión de .NET dotnet --version
Compilar proyecto dotnet build …
Publicar para Linux dotnet publish … -r linux-x64
Publicar para Windows dotnet publish … -r win-x64

📚 Recursos