> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lerian.studio/llms.txt
> Use this file to discover all available pages before exploring further.

# Añadir un Template

> Crea un Template en Reporter usando Template Builder desde Lerian Console o subiendo un archivo .tpl preparado para generar informes reutilizables.

Usa esta página para crear el Template que Reporter usará para generar un Report. Un Template es la estructura reutilizable del archivo de salida: define el diseño, los campos, las condiciones, los bucles, los cálculos y el formato final.

## Objetivo

***

Añadir un Template que los operadores puedan seleccionar al generar Reports.

Por ejemplo, un Template fiscal mensual puede definir una cabecera CSV, una fila por transacción y un monto total al final del archivo. Un Template XML regulatorio puede definir las etiquetas XML requeridas y rellenarlas con valores de un Data Source.

## Cuándo usarlo

***

Usa esta tarea cuando:

* estás configurando el primer Template para un informe cuyo Data Source ya existe;
* una nueva obligación de informe requiere una nueva estructura de salida;
* tu equipo ya tiene un archivo `.tpl` revisado y necesita ponerlo disponible en la Console;
* un operador necesita construir el Template visualmente en lugar de editar código `.tpl`.

No uses esta tarea para arreglar un Template que ya existe. Usa [Actualizar un Template](/es/reporter/console/updating-a-template) en su lugar.

## Antes de empezar

***

Confirma:

* el Data Source que alimentará el Template está disponible cuando el Template necesite campos de base de datos. Puede ser una fuente interna ya configurada para el entorno o una externa añadida desde **Data Sources**;
* se conoce el formato de salida esperado: CSV, XML, HTML, TXT o PDF;
* el Template se creará en **Template Builder** o se subirá como archivo `.tpl`;
* el responsable del informe ha confirmado los campos que deben aparecer en la salida.

<Note>
  Un Template no es un Report generado. Es la definición reutilizable que Reporter aplica más tarde durante la generación.
</Note>

## Opción 1: Construir en Template Builder

***

Usa Template Builder cuando un operador necesite ensamblar el Template visualmente a partir de bloques.

<Steps>
  <Step title="Abre Template Builder">
    Ve a la página **Templates** y haz clic en **Template Builder**.
  </Step>

  <Step title="Nombra el Template">
    Usa un nombre que los operadores puedan reconocer después, como `Monthly tax CSV` o `Daily transaction PDF`.
  </Step>

  <Step title="Elige el formato de salida">
    Selecciona el formato que debe producir el Report generado: XML, HTML, CSV, TXT o PDF.
  </Step>

  <Step title="Añade los bloques del Template">
    Añade bloques como **Text**, **Variable**, **Loop**, **Conditional** o **Aggregation**. En la práctica, los bloques representan las piezas del archivo final: texto fijo, valores de base de datos, filas repetidas, secciones condicionales o totales.
  </Step>

  <Step title="Conecta campos a los datos">
    Usa la barra lateral de Data Sources para seleccionar campos de la conexión configurada. Por ejemplo, usa un bloque **Variable** para colocar `transactions.amount` en la salida.
  </Step>

  <Step title="Guarda el Template">
    Haz clic en **Save** para validar los bloques y guardar el archivo `.tpl` generado.
  </Step>
</Steps>

## Opción 2: Subir un archivo `.tpl`

***

Usa la subida cuando un equipo técnico ya mantiene el Template fuera de la Console.

<Steps>
  <Step title="Abre el wizard de subida">
    Ve a la página **Templates** y haz clic en **New Template**.
  </Step>

  <Step title="Sube el archivo">
    En el paso **File**, arrastra el archivo `.tpl` a **Drag file here**, o haz clic en **to select** para buscar en tu equipo.
  </Step>

  <Step title="Configura el Template">
    En el paso **Config**, rellena **Template Name** y **Output Format**.
  </Step>

  <Step title="Revisa el resumen">
    En el paso **Review**, confirma el archivo, el nombre y el formato de salida. Usa los botones de edición si algún campo es incorrecto.
  </Step>

  <Step title="Guarda el Template">
    Haz clic en **Save Template**.
  </Step>
</Steps>

<Tip>
  **API equivalente**: [Endpoint Upload template](/es/reference/reporter/upload-template)
</Tip>

## Guía de campos

***

### Campos del wizard de subida

| Campo                    | Qué introducir                                                                                                                        | Ejemplo           |
| ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------- | ----------------- |
| **Template File (.tpl)** | Archivo `.tpl` obligatorio usado como fuente del Template. Debe ser mayor que 0 bytes y no superior a 5 MB. Campo de API: `template`. | `monthly-tax.tpl` |
| **Template Name**        | Nombre obligatorio visible al operador. Se mapea a `name` en la Console y a `description` en la API de Reporter.                      | `Monthly tax CSV` |
| **Output Format**        | Tipo obligatorio de salida. Usa `csv`, `xml`, `html`, `txt` o `pdf`.                                                                  | `csv`             |

### Campos de Template Builder

| Campo                         | Qué introducir                                                                                                                                           | Ejemplo                                                                  |
| ----------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------ |
| **Template name**             | Nombre obligatorio en el encabezado del builder. Se convierte en el nombre guardado del Template y en el prefijo del nombre del archivo `.tpl` generado. | `Daily transaction PDF`                                                  |
| Barra de bloques              | Añade al menos un bloque antes de guardar. Los bloques se convierten en el código `.tpl` generado.                                                       | Cabecera **Text** + **Loop** sobre transacciones + **Aggregation** total |
| Barra lateral de Data Sources | Usa los Data Sources configurados para insertar campos en bloques **Variable**. Los campos técnicos incluyen `dataSource`, `table` y `field`.            | `production-postgres.transactions.amount`                                |

## Resultado esperado

***

Tras guardar, el Template aparece en la página **Templates** y puede seleccionarse en el wizard **Generate Report**.

## Errores comunes y puntos de atención

***

<AccordionGroup>
  <Accordion title="Subir un archivo que no es `.tpl`">
    La subida solo acepta archivos `.tpl`. Si el Template aún se está diseñando, usa primero **Template Builder** o prepara el archivo `.tpl` fuera de la Console.
  </Accordion>

  <Accordion title="Elegir el formato de salida incorrecto">
    El formato de salida controla qué tipo de archivo descargarán los operadores tras generar un Report. Confirma el formato requerido antes de guardar.
  </Accordion>

  <Accordion title="Crear un Template antes de que el Data Source esté listo">
    Los Templates pueden referenciar campos de Data Sources. Si la fuente requerida falta o no está probada, los operadores pueden no saber qué campos son seguros usar.
  </Accordion>
</AccordionGroup>

## Pasos siguientes

***

* Usa [Generar un Report](/es/reporter/console/generating-a-report) para crear un Report a partir del Template.
* Usa [Actualizar un Template](/es/reporter/console/updating-a-template) si la estructura, el archivo, el nombre o el formato de salida necesitan corrección.
* Usa el [Template Builder](/es/reporter/console/template-builder) cuando los operadores necesiten mantener el Template visualmente.
