KEPLIN Docs

Crear un informe

El diseño de un informe — bandas, papel y márgenes, conjuntos de datos, parámetros, elementos y reglas, y la salida en PDF o Excel.

Un informe es un documento impreso a partir de los datos de la app: un listado, una factura, un mapa de cierre del mes. Sale en PDF — paginado, con cabeceras que se repiten y totales al final — o en Excel, y puede generarse a mano, por un botón de una pantalla, por un script, por un workflow, o por una programación que lo envía por correo.

El modelo es el de bandas: un informe no es una pantalla que crece hacia abajo, es una secuencia de franjas que el motor repite según la regla de cada una — una vez, por página, por fila, por grupo. Eso es lo que hace posible la paginación.

La unidad es el milímetro, en todas partes. Es la unidad del papel y sobrevive al cambio de A4 a Letter.

En esta página diseñamos el informe Oportunidades por conta de la app Gestión de Clientes: el pipeline comercial agrupado por cuenta, con los contactos de cada una, el total por cuenta y un gráfico al final.

Dónde viven los informes

Los informes están en el minitab Datos del árbol de la app, bajo las fuentes de datos. Hacer clic en el nombre abre el diseño en una pestaña.

El grupo Informes en el minitab Datos
El grupo Informes en el minitab Datos

Una app sin informes muestra «Sin informes — crea uno para diseñarlo.».

Crear un informe

  1. Pasa el ratón por la fila del grupo Informes y haz clic en Nuevo informe.
  2. Escribe el Nombre — por ejemplo Facturas do mês.
  3. Haz clic en Crear.

El diálogo Nuevo informe
El diálogo Nuevo informe

«Crea un informe en la raíz. Puedes moverlo a una carpeta después.» El informe nace en A4 vertical, con las cinco bandas fijas y sin datos conectados, y el diseño se abre enseguida.

El diseño

El diseño de Oportunidades por cuenta
El diseño de Oportunidades por cuenta

La pestaña tiene tres columnas y una barra arriba:

Zona Qué es
Barra superior El nombre, el identificador del informe (rpt_…, lo que el código usa para llamarlo), el estado del guardado, deshacer/rehacer, las medidas del papel y los botones Excel y Vista previa.
Columna izquierda La paleta Elementos, los Datos, los Agrupamientos, los Parámetros y las Programaciones.
Centro La superficie de diseño: una regla en milímetros y las bandas, unas sobre otras en el orden en que salen en el papel.
Derecha Las propiedades — del informe, de la banda seleccionada o del elemento seleccionado.

Como en el resto de la plataforma, no hay botón de guardar: el diseño se guarda solo.

La cabecera y la barra de herramientas son las mismas del diseñador de pantallas. En la cabecera: el nombre, el identificador, las medidas del papel y el estado de guardado. En la barra: deshacer y rehacer; el orden de dibujo (traer al frente, avanzar, retroceder, enviar atrás, para que un rectángulo de fondo quede detrás del texto); Duplicar y Eliminar; alinear (izquierda, centro, derecha, arriba, medio, abajo) y distribuir (horizontal, vertical); y a la derecha Excel, Vista previa y el zoom. Con un solo elemento seleccionado, alinear lo alinea a la banda (centrar un título en la página, por ejemplo); con varios, los alinea entre sí, siempre que estén en la misma banda.

La paleta Elementos los agrupa por tipología (Texto, Formas, Medios y Estructura), con la caja Buscar arriba y el ancho arrastrable por el borde derecho.

Las bandas

Las bandas son un conjunto fijo — no se añaden franjas a placer, porque cada una tiene una regla de repetición propia que el motor conoce por el nombre.

La banda Detalle seleccionada en la superficie de diseño
La banda Detalle seleccionada en la superficie de diseño

Banda Cuándo sale
Cabecera del informe «Sale una única vez, al inicio de la primera página.» Logotipo, título, fecha de emisión.
Cabecera de página «Se repite en la parte superior de todas las páginas — logotipo, títulos de columna.»
Detalle «Sale una vez por cada fila de datos. Esta banda es la que llena el informe.»
Pie de página «Se repite al pie de todas las páginas — número de página, fecha.»
Pie del informe «Sale una única vez, al final — totales generales.» Nace desactivado.

A estas se suman, cuando hay agrupamientos, una cabecera y un pie por nivel — ver Gráficos y subinformes.

Hacer clic en el título de una banda la selecciona; el panel de la derecha pasa a mostrar sus propiedades.

Las propiedades de una banda
Las propiedades de una banda

Propiedad Qué hace
Altura (mm) La altura de la franja. También se arrastra la línea divisoria, en la superficie de diseño.
Activa «Desactivada, la banda no sale en el informe ni ocupa espacio.»
Reglas de la banda Suprimir la banda según los datos.

Sobre las reglas: «suprimir la banda según los datos. Suprimida, no sale ni ocupa espacio — es lo que sustituye tener varias bandas de detalle». En vez de tres franjas de detalle con condiciones distintas, una franja y reglas que la esconden cuando no toca.

El papel

Con nada seleccionado, el panel de la derecha muestra las propiedades del informe y de la página:

Las propiedades del informe y de la página
Las propiedades del informe y de la página

Campo Opciones
Nombre / Descripción Identificación, para quien construye.
Formato A4, A3, A5, Letter, Legal o Personalizado (anchura y altura en mm).
Orientación Vertical u Horizontal.
Márgenes (mm) Superior, Inferior, Izquierda, Derecha.

«El espacio entre el papel y el contenido. La anchura útil que queda es la de la superficie de diseño» — cambiar los márgenes cambia la anchura en la que diseñas, y la regla lo acompaña.

La sección Vista, al final del panel, tiene el Zoom de la superficie de diseño. No afecta al documento; es solo la lupa de quien diseña.

Los datos

Un informe sin datos conectados no tiene campos que arrastrar. Abre Conjuntos de datos en el + de la sección Datos:

El diálogo Conjuntos de datos
El diálogo Conjuntos de datos

Cada conjunto tiene:

Campo Notas
Nombre del conjunto Cómo lo llaman los elementos (oportunidades, contactos).
Papel principal, vinculado o suelto — ver la tabla de abajo.
API de tabla La API de la app de donde vienen las filas.
Filtros (where) La misma gramática de filtros del resto de la plataforma. Puede comparar con parámetros del informe.
Carga / Por página Cómo se leen las filas.

Los tres papeles:

Papel Qué significa
principal «La banda de detalle lo recorre, una fila impresa por cada fila suya.» Solo hay uno.
vinculado «Pertenece a una fila de otro conjunto por el campo que indiques — la factura y sus líneas.»
suelto «Ni recorrido ni vinculado, sirve para la cabecera o para un total general.»

Un conjunto vinculado pide tres campos más: el Conjunto padre, el Campo en el padre («el campo que identifica la fila del padre — normalmente la clave») y el Campo en este conjunto («el campo que apunta de vuelta al padre»).

Nota

La vinculación es una declaración, y eso es lo que la hace rápida: el motor carga todo de una vez y agrupa en memoria, en vez de hacer una consulta por cada fila del conjunto principal.

En la columna izquierda, cada conjunto aparece con el número de campos y se expande con la flecha. Arrastrar un campo a una banda crea un elemento Campo ya conectado — es la forma más rápida de llenar la banda de detalle.

Para quitar un conjunto, pasa el ratón por su línea en la columna izquierda y pulsa el icono Quitar que aparece a la derecha, el mismo de los agrupamientos; no hace falta abrir el diálogo. Deshacer lo repone.

Cuántas filas y en qué zona horaria

Cada conjunto trae hasta 20 000 filas. Por encima de eso, el informe sale con las primeras 20 000 y con un aviso al final (en el PDF, después del pie del informe; en Excel, en la última fila) que dice qué conjunto se recortó. Los totales de ese informe no cuentan las filas que quedaron fuera: usa los parámetros y los filtros del conjunto para acotarlo.

Las fechas con hora se escriben en la zona horaria de quien lee: la del navegador o del móvil de quien abre el informe, y la de la programación en un informe programado. La Fecha de emisión también: después de la medianoche en Lisboa ya es el día siguiente, aunque el servidor esté en otra zona horaria.

Los parámetros

Los parámetros son «valores que el informe recibe de quien lo manda ejecutar» — el mes, la fase, el cliente. Se usan en los filtros de los conjuntos de datos.

El diálogo Parámetros
El diálogo Parámetros

Campo Notas
Nombre Cómo lo llaman el filtro y el código.
Etiqueta Lo que se lee cuando se pide el valor.
Tipo Texto, Número, Fecha o Sí/No.
Obligatorio Sin valor, el informe se niega a ejecutarse.
Valor por defecto Se usa cuando quien llama no da ninguno.

Un parámetro se quita de la misma forma: el icono Quitar aparece al pasar el ratón por su línea en la columna izquierda. Lo mismo vale para las Programaciones.

Los elementos

La paleta Elementos tiene todo lo que se pone en una banda. Se arrastra a la banda; se suelta donde debe quedar.

La columna izquierda: paleta, datos, agrupamientos, parámetros y programaciones
La columna izquierda: paleta, datos, agrupamientos, parámetros y programaciones

Elemento Para qué sirve
Texto Texto fijo — títulos, etiquetas, pies.
Campo El valor de un campo del conjunto. Es lo que sale de arrastrar un campo.
Agregado Una cuenta sobre un conjunto: Suma, Media, Recuento, Mínimo, Máximo.
Campo de sistema Número de página, Total de páginas, Página X de Y, Fecha de emisión, Nombre del informe.
Línea Separadores y marcos.
Rectángulo Fondos y cajas, con relleno, contorno y esquinas.
Imagen Un archivo de la app, una dirección, o el contenido de un campo.
Gráfico Nueve tipos, con los mismos datos de las pantallas.
Subinforme Otro informe diseñado dentro de este.
Código de barras Code 128, EAN-13 o QR.

Los últimos tres tienen página propia: Gráficos y subinformes.

Las propiedades de un elemento

Haz clic en un elemento en la superficie de diseño:

Un elemento seleccionado, con las propiedades a la derecha
Un elemento seleccionado, con las propiedades a la derecha

Sección Qué tiene
Posición y tamaño X (mm), Y (mm), Anchura (mm), Altura (mm). La y cuenta desde la parte superior de la banda.
Aspecto Tipo de letra, Cuerpo (pt), negrita/cursiva/subrayado, alineación, Alineación vertical, color, Relleno, Contorno (mm) y Color del contorno, Ajustar línea.
Formato (campos y agregados) Máscara de presentación, con la misma gramática de las columnas de la tabla.
Exportación Nombre de la columna en el Excel. «Vacío usa el nombre del campo. En el papel no aparece — ahí la cabecera es un texto que diseñas donde quieras.»
Reglas de formato Ver abajo.

Sobre Ajustar línea: «desactivado, el texto que no cabe se corta en vez de pasar a la línea siguiente» — es lo que se quiere en una columna de tabla, para que una fila larga no empuje toda la página.

Seleccionando varios elementos (con la caja de selección o con Shift), el panel dice cuántos son y los mueve en conjunto, con el ratón o con las flechas.

Reglas de formato

Cada elemento puede tener reglas que «cambian el aspecto según los datos de la fila: pintar un valor atrasado, esconder una etiqueta, poner un total en negrita cuando es negativo». Son el mismo motor y el mismo editor de las reglas de los widgets.

La última regla que coincida es la que manda — ordénalas de la más general a la más específica.

Ver el resultado

Dos botones, en la esquina superior derecha:

Los botones Excel y Vista previa
Los botones Excel y Vista previa

  • Vista previa genera el PDF con los datos reales de la app y lo abre ahí mismo, paginado. Así se comprueba el diseño: no siempre lo que cabe en la superficie de diseño cabe en la página.
  • Excel genera la hoja de cálculo y la descarga. Aquí no hay bandas ni páginas: sale una tabla, con una columna por elemento de la banda de detalle, y las cabeceras vienen del Nombre de la columna de cada uno.

Si el informe tiene parámetros obligatorios, se piden antes de generar.

Consejo

Diseña para el PDF y confirma en el Excel, no al revés. El PDF es el formato exigente — márgenes, saltos de página, bandas que no caben. El Excel perdona casi todo.

Preguntas frecuentes

La banda de detalle sale vacía. No hay conjunto principal, o su filtro no devuelve filas. Abre Conjuntos de datos y confirma que hay uno con el papel principal, y que los parámetros que el filtro usa tienen valor.

Un campo en una banda de cabecera sale vacío. Es lo esperado fuera de las bandas de grupo. En la Cabecera del informe y en el Pie del informe no hay «fila actual» — mostrar la primera de todas sería inventar un valor. En una cabecera de grupo, el campo lee la primera fila del grupo, que es lo que se quiere.

El informe tarda o trunca. Cada conjunto tiene un techo de filas por lectura. Filtra más — por fecha, por estado — en vez de imprimir la tabla entera. Un informe de 4.000 páginas no lo lee nadie.

Necesito más de lo que una programación sabe hacer. Escribe un script Python y llama a reports.render(...) — ver Programar y enviar.