
En esta segunda automatización del Laboratorio AF probamos cómo generar informes con IA y n8n a partir de dos tablas internas con datos ficticios de ventas y soporte. El flujo consulta sus registros, prepara la información y utiliza Gemini para redactar un informe organizado.
Comprobamos los cálculos, la respuesta ante datos incompletos y la ejecución programada. También convertimos el informe en un archivo de texto descargable. Documentamos los resultados y sus límites: las fuentes son tablas internas de n8n y la descarga del archivo se realiza manualmente.
1. Objetivo de la automatización
El objetivo fue comprobar si n8n podía consultar dos tablas de datos, reunir su contenido y generar con IA un informe breve sobre ventas y soporte.
El informe debía incluir:
- Un resumen de la actividad.
- Los pedidos, el importe total y el importe medio por pedido.
- Las consultas recibidas, resueltas y pendientes, junto con el porcentaje de resolución.
- Los datos que faltaban y las limitaciones del análisis.
- Dos recomendaciones identificadas como propuestas.
También probamos la ejecución programada y la conversión del resultado en un archivo de texto descargable. Utilizamos datos ficticios y pedimos al modelo que no inventara cifras ni comparaciones.
2. Herramientas utilizadas para generar informes con IA y n8n
- n8n instalado en Windows mediante Docker Desktop: para conectar los pasos del flujo.
- Data tables de n8n: dos tablas internas e independientes para almacenar los datos ficticios de ventas y soporte.
- Gemini mediante API: utilizamos el modelo Gemini 3.5 Flash Lite con la credencial de la automatización anterior.
- Schedule Trigger: para comprobar la ejecución programada con un intervalo de prueba de cinco minutos.
- Convert to File: para convertir el informe en un archivo de texto que descargamos manualmente.
Reutilizamos la instalación y la conexión con Gemini. No conectamos aplicaciones externas nuevas.
Para ejecutar el flujo, el ordenador, Docker Desktop y el contenedor de n8n debían estar funcionando y disponer de conexión a Internet.
3. Datos utilizados en la prueba
Creamos dos tablas internas de n8n, cada una con una columna de texto llamada contenido y un registro ficticio.
Tabla de ventas: AF_Ventas_Prueba
- Pedidos: 12.
- Importe total: 840 euros.
- Pedidos cancelados: 2, ya excluidos de los 12 pedidos y de los 840 euros.
- Comparaciones: sin datos de días anteriores.
El importe medio esperado era 70 euros por pedido, resultado de dividir 840 entre 12. No había que volver a restar las cancelaciones.
Tabla de soporte: AF_Soporte_Prueba
- Consultas recibidas: 8.
- Resueltas: 6.
- Pendientes: 2; una sobre acceso y otra sobre una factura.
- Información no disponible: tiempos de respuesta y satisfacción de los clientes.
El porcentaje de resolución esperado era 75 %, resultado de dividir 6 entre 8 y multiplicar por 100.
Las tablas se rellenaron manualmente. El flujo consultaba sus registros, pero no recopilaba información de sistemas externos.
4. Cómo configuramos el flujo
Organizamos la versión final en seis pasos:
- Schedule Trigger: inicia el flujo según la programación. Para la prueba utilizamos un intervalo de cinco minutos.
- Leer ventas: consulta el registro de la tabla AF_Ventas_Prueba.
- Leer soporte: consulta el registro de la tabla AF_Soporte_Prueba.
- Edit Fields: reúne el contenido de ambas tablas en dos campos: ventas y soporte.
- Basic LLM Chain: envía los datos y las instrucciones a Gemini para generar el informe.
- Convert to File: convierte el texto obtenido en un archivo llamado informe-af.txt.
Conectamos Google Gemini Chat Model a la entrada de modelo de Basic LLM Chain.
La lectura se configuró para esta prueba con un único registro por tabla. No probamos la combinación de múltiples filas ni de distintos periodos.
5. Instrucciones para generar el informe
Pedimos a Gemini un informe en español de un máximo de 250 palabras, organizado en resumen, ventas, soporte, limitaciones y dos recomendaciones.
Las instrucciones incluían estas condiciones:
- Utilizar únicamente los datos proporcionados.
- No inventar cifras ni comparaciones.
- No afirmar mejoras, aumentos o descensos sin datos anteriores.
- No volver a restar los pedidos cancelados, porque ya estaban excluidos.
- No confundir el porcentaje de resolución con la satisfacción de los clientes.
- Indicar cuándo faltaba información.
- Identificar las recomendaciones como propuestas.
Estas instrucciones orientaban la respuesta, pero no sustituían la revisión posterior. Comprobamos los cálculos y contrastamos los informes con los datos de entrada.
6. Pruebas manuales y revisión de resultados
Comenzamos con los datos escritos directamente en Edit Fields, antes de conectar las tablas.
| Prueba | Resultado esperado | Resultado observado |
|---|---|---|
| Ventas: 12 pedidos y 840 euros | 70 euros por pedido | Cálculo correcto |
| Soporte: 6 consultas resueltas de 8 | 75 % de resolución | Cálculo correcto |
| Cancelaciones ya excluidas | No restarlas de nuevo | Conservó los 12 pedidos y 840 euros |
| Sin datos anteriores | No inventar tendencias | Indicó que no podía comparar |
| Soporte sin cifras de resueltas y pendientes | No calcular el porcentaje | Señaló que faltaban datos |
Después conectamos las dos tablas y ejecutamos manualmente el flujo completo. El informe recuperó los datos de ambas, mantuvo los cálculos esperados y se convirtió en un archivo de texto que descargamos y revisamos.
Los resultados corresponden a estos ejemplos concretos; no demuestran que cualquier informe futuro vaya a ser correcto.
7. Prueba de ejecución programada
Primero comprobamos la programación con los datos escritos en el flujo. Después publicamos la versión completa, llamada «Informe desde tablas · versión 2», con un intervalo de prueba de cinco minutos.
Sin pulsar Execute, n8n registró una ejecución el 18 de octubre de 2026 a las 01:05:04, según la hora mostrada en la interfaz. Terminó con estado Succeeded y una duración de 1,351 segundos.
Todos los pasos aparecieron completados: lectura de ventas, lectura de soporte, preparación de campos, generación con Gemini y conversión a archivo.
Descargamos manualmente el archivo de esa ejecución y comprobamos que incluía 70 euros por pedido y 75 % de resolución, además de las limitaciones y dos propuestas.
La duración corresponde a esa ejecución concreta; no es una medida de rendimiento habitual. Al terminar, retiramos la publicación para detener la programación y evitar más llamadas a la API.
8. Archivo generado y descarga
Configuramos Convert to File para tomar el campo text del informe y crear el archivo informe-af.txt.
Comprobamos que el archivo descargado contenía las cinco secciones, los cálculos y las limitaciones. Las tildes y los saltos de línea se conservaron. Algunas respuestas incluían asteriscos de formato Markdown, que permanecían visibles en el archivo de texto.
La creación del archivo formaba parte del flujo automático, pero la descarga al ordenador fue manual. No configuramos su envío por correo ni su almacenamiento automático en una carpeta o servicio externo.
9. Limitaciones y costes
Esta prueba utilizó dos tablas internas de n8n con un registro ficticio cada una. No conectamos fuentes externas ni comprobamos grandes volúmenes, múltiples periodos o datos contradictorios.
Los cálculos los generó el modelo y los revisamos manualmente. No incorporamos una validación automática que detectara errores antes de crear el archivo.
Utilizamos Gemini con la cuenta configurada en el nivel gratuito. No medimos los tokens consumidos ni el coste por informe, por lo que no podemos estimar el coste de un uso continuado.
La instalación local depende de que el ordenador y n8n estén funcionando. Tampoco probamos la recuperación tras interrupciones ni configuramos avisos de error, envío de informes o almacenamiento externo automático.
El flujo quedó sin publicar al terminar las pruebas, por lo que no continúa ejecutándose cada cinco minutos.
10. Qué hemos aprendido
La prueba mostró que podemos generar informes con IA y n8n consultando dos tablas internas, reuniendo sus datos y utilizando Gemini para redactar un resultado estructurado.
Comprobamos los cálculos con datos completos y verificamos que, al retirar información de soporte, el informe reconocía que no podía calcular el porcentaje de resolución. Después probamos la versión con tablas mediante una ejecución programada y revisamos el archivo generado.
También distinguimos entre crear un archivo dentro del flujo y guardarlo automáticamente fuera de n8n: en nuestro caso, la descarga se realizó manualmente.
El resultado es un prototipo probado con datos ficticios. Para ampliarlo, quedarían pendientes la conexión con fuentes externas, la validación automática de cálculos y el almacenamiento o envío del informe.
Preguntas frecuentes
¿De dónde obtiene los datos esta automatización?
De dos tablas internas de n8n, una de ventas y otra de soporte. Las rellenamos manualmente con datos ficticios; no conectamos sistemas externos.
¿El informe se genera automáticamente?
Sí. Comprobamos una ejecución programada que leyó ambas tablas, generó el informe con Gemini y lo convirtió en un archivo de texto.
¿El archivo se guarda automáticamente en mi ordenador?
No. El flujo crea el archivo dentro de n8n, pero lo descargamos manualmente. No configuramos almacenamiento externo ni envío por correo.
¿Qué ocurre cuando faltan datos?
En la prueba con datos incompletos de soporte, el informe indicó que no podía calcular el porcentaje de resolución. Este resultado no garantiza el mismo comportamiento en todos los casos.
¿Podemos confiar en todos los cálculos?
Es necesario revisarlos. Los cálculos comprobados fueron correctos, pero no incorporamos una validación automática.
¿Cuánto cuesta generar cada informe?
No lo medimos. Utilizamos una cuenta de Gemini configurada en el nivel gratuito, sin registrar el consumo de tokens ni calcular el coste por informe.
¿La programación sigue activa?
No. Retiramos la publicación del flujo después de comprobar su funcionamiento.
Fuentes oficiales
- Tablas de datos de n8n: almacenamiento y consulta de datos dentro de n8n.
- docs.n8n.ioSchedule Trigger: configuración de ejecuciones programadas.
- docs.n8n.ioConvert to File: conversión de datos en archivos.
También puedes aprender
Para profundizar en lo que hemos utilizado en esta automatización, puedes explorar estos contenidos:
- Academia de Agentes IA: conceptos y guías para comprender cómo funcionan los agentes y sus herramientas.
- Clasificar correos con IA y n8n: nuestra primera automatización, con recepción por IMAP y clasificación mediante Gemini.Proyecto
- Crear un agente IA que investiga y prepara informes: organización de investigaciones, revisión de fuentes y comprobación de resultados.
- Balance de los cuatro proyectos del Laboratorio AF: resultados, dificultades y aprendizajes de los proyectos realizados.
Ver todas las entradas del blog
⚠️ Aviso importante
Esta automatización es una prueba educativa con datos ficticios. Antes de utilizar información real, revisa los permisos y las condiciones del proveedor de IA: los datos incluidos en las instrucciones se envían a la API de Gemini.
Los informes pueden contener errores de cálculo o interpretación. Revisa su contenido antes de compartirlos o utilizarlos para tomar decisiones.
No incluyas contraseñas ni información confidencial en las pruebas. Si activas una programación, recuerda que generará nuevas llamadas a la API mientras el flujo esté publicado y n8n permanezca funcionando.