Generación de Informes. Programación. Práctica 9



Documentos relacionados
Guía a IReport y HQL. Conexión a HSQL utilizando SQL.

Introducción a JasperReports

MANUAL DE USO DE LA APLICACIÓN

RUEDA TORRES DULCE CAROLINA 3CM2 HIBERNATE EN UNA APLICACIÓN WEB

Eurowin Medidas SQL Noticia nº: 1

Race Manager by Master Timing Guía del usuario GUIA RACE MANAGER. Eventronic, SL

Proceso de cifrado. La fortaleza de los algoritmos es que son públicos, es decir, se conocen todas las transformaciones que se aplican al documento

Tutorial: Creación de un informe simple con Stimulsoft Reports.Web

Manual de usuario Versión: 1.3 Edición: 05/02/2015 1

Ayuda básica relativa al interfaz web

Servicio Webmail. La fibra no tiene competencia

WinDTE Generación IECV Custodium.com

Tarea 1 Programación José Luis Comesaña

PHPMYADMIN Y MYSQL. Para gestionar la base de datos MySQL, lo haremos desde la aplicación PhpMyAdmin.

I.E. FRANCISCO ANTONIO DE ZELA MANUAL DE MOVIE MAKER

13.1. Tablas dinámicas de Excel

Definiciones. Tema 21_Módulos Menú 1

La pestaña Inicio contiene las operaciones más comunes sobre copiar, cortar y pegar, además de las operaciones de Fuente, Párrafo, Estilo y Edición.

Formularios. Formularios Diapositiva 1

Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia de la Computación. IIC1102 Introducción a la Programación

WORD 2003 (COMPLETO) Enero 2010 TEMARIO

Presentaciones. Con el estudio de esta Unidad pretendemos alcanzar los siguientes objetivos:

3. CONSIDERACIONES GENERALES

Capitulo 5. Implementación del sistema MDM

Aspel-COI 6.0 Nuevas Funciones y Características

Integración de Magento & Dynamics NAV

GENERACIÓN DE TRANSFERENCIAS

WALMAR CONTROL EN RUTA MANUAL DE USUARIO ADMINISTRACION EMANAGER 6

MS ACCESS BÁSICO 6 LOS INFORMES

García Evangelista Santa Esmeralda HIBERTNATE. Creamos un Proyecto nuevo de tipo Aplicación web. Para nuestro ejemplo, le damos el nombre S.

Capítulo 3 Diseño del Sistema de Administración de Información de Bajo Costo para un Negocio Franquiciable

Guía de instalación de la carpeta Datos de IslaWin

CREACIÓN Y CONFIGURACIÓN DE WIKIS

7zip es un programa de carácter libre y gratuito, que permite tanto comprimir como descomprimir archivos, con una alta capacidad de comprensión.

Guía de Instalación. Versiones del documento

Laboratorio 6. Creación de sitios Web - Dreamweaver

Kaldeera Advanced Forms 2009 Guía del usuario

MANUAL GESTIÓN CMS ONLINE

Manual del visor GeoEuskadi 2013 MANUAL DEL VISOR GEOEUSKADI

Generación de reportes en múltiples formatos con JasperReport e ireport

Recuperador datos externos

SERVICIOS PARA EL DISEÑO E IMPLEMENTACIÓN DEL PROGRAMA INTEGRAL DE TRANSFORMACIÓN DIGITAL DE LA PROVINCIA DE LUGO: TRANSFORM@TIC

Sesión No. 4. Contextualización INFORMÁTICA 1. Nombre: Procesador de Texto

MANUAL DE USUARIO PANEL DE CONTROL Sistema para Administración del Portal Web.

Desarrollo de Servicios Web con JBuilder

Plantilla de texto plano

TUTORIAL DE INSTALACIÓN Y CONFIGURACIÓN DE NETBEANS

Roberto Quejido Cañamero

El editor incluye los siguientes componentes:

Introducción a la extensión de scripting en gvsig 2.0

Para instalar el software FacturaScripts, primero deberemos descargarlo. Para ello, accedemos a la url:

Java Básico. Empaquetamiento y despliegue de aplicaciones. Copyright

BOLETÍN ELECTRÓNICO VISUAL PUBLINET S.L

PROGRAMA FORMATIVO MICROSOFT ACCESS 2003 (COMPLETO)

Cómo crear un fichero de ayuda para tus aplicaciones?

GUÍA DE USUARIO DEL CORREO

Aplicateca. Manual de Usuario: Ilion Factura Electrónica. Espíritu de Servicio

Bibliotecas Escolares. Perfil de Lector.

GUÍA Nro. 1 TECNOLOGÍA DE INTERNET. TIII PIII

Visual Chart app. Guía rápida para el usuario

Tutorial rápido de. acceso a la plataforma virtual

Manual de instalación Actualizador masivo de Stocks y Precios

INDICE. 1. Introducción El panel Entities view El panel grafico Barra de botones Botones de Behavior...

PLATAFORMA DE VISADO TELEMÁTICO.

Manual de usuario de Cambio de Nombre de Diseños Industriales

Correo Electrónico: Webmail: Horde 3.1.1

Opciones de menú, gestión y distribución de ventanas INTERFAZ E INFORMACION

Word XP (Continuación) Salto de página vs. Salto de Sección

Manual de NetBeans y XAMPP

Abril WebApp STR- a3erp. Aplicación de registro de pedidos, albaranes y facturas para a3erp. Compatible con las principales plataformas

MANUAL DE USUARIO FACTURACIÓN ELECTRÓNICA

MANUAL DE LA APLICACIÓN DE ENVÍO DE SMS

SOLUCIONES DE DESARROLLO JAVA PARA LAS APLICACIONES DE LA COMUNIDAD DE MADRID

GE Power Management. 6S``O[WS\bORS1]\TWUc`OQWÕ\g. GE-FILES 7\ab`cQQW]\Sa 539$ &

ESTRUCTURA DE LOS SITIOS DE CATEDRAS

Manual de usuario del software de marketing de fidelización de clientes Hermes

Ejercicios - Persistencia en Android: ficheros y SQLite

Ficheros Electrónicos

NORMA 34.14(SEPA) 05/11/2013

Informes. 3. Elija la opción Nuevo (en la parte superior de la ventana) 4. Elija Autoinformes: en tablas y luego la tabla o consulta que se usará.

MANUAL DE USUARIO DESKTOP

Proceso de Instalación Una vez agregada como aplicación a su sitio y que esté disponible:

Entorno Virtual Uso educativo de TIC en la UR Tutorial de uso de:

SOROLLA2 GUÍA PRÁCTICA SIMPLIFICADA. Relaciones de transferencias. Marzo del 2014

Programación páginas web con ASP.NET 3.5 (C#)

Actualmente existen dos maneras de enviar y publicar las estadísticas en la página web de la Federación Española de Baloncesto:

SMS Gestión. manual de uso

Tema: CREACIÓN DE CONSULTAS E INFORMES EN UNA BASE DE DATOS CON MICROSOFT ACCESS 2013.

Desde la pantalla de Ventas TPV Multilíneas (VE200001) se habilita un nuevo botón llamado Abono Parcial que realizará lo siguiente:

Eurowin 8.0 SQL. Manual de la FIRMA DIGITALIZADA

Guía rápida de la Oficina Virtual Área Web y Administración Electrónica

CURSO DE WORD 2007 AVANZADO

Codex.pro. Gestión de pagos del centro

MANUAL DE AYUDA. SAT Móvil (Movilidad del Servicio Técnico)

Tutorial Google Sites

Manual de usuario Contabilidad Electrónica

Guía de inicio rápido a

Transcripción:

Generación de Informes Ingeniería de la Programación Práctica 9 1

JasperReport: librería Java para el desarrollo de informes ireport: Herramienta para el diseño visual de informes JasperReport Aplicación Java Diseño Informe (Eclipse) (ireport) Informe.jasper JasperReport.jar p Conexión Java-JasperReport 2

Contenido ireport Qué es ireport? Primeros pasos Configuración Crear Conexión JDBC Uso del Asistente Aspectos Avanzados en el Diseño de Informes Informes parametrizados Subinformes JasperReport Qué es JasperReport? Configuración de eclipse Visualizando informes desde java 3

ireport Qué es ireport? 4

ireport - Qué es ireport? Utilidad Opensource para crear informes Implementado 100% en Java Genera informes JasperReports Editor WYSIWYG (What You See Is What You Get) Soporta todas las bases de datos accesibles por JDBC. Sun Java 2 SDK 1.4 o superior 5

ireport - Qué es ireport? Proyecto IReport: http://sourceforge.net/projects/ireport p// /p / p Descarga Binarios: http://sourceforge.net/project/showfiles.php?group_id=64348 Tutoriales (En inglés): http://sourceforge.net/docman/?group_id=64348 Foros de Ayuda (En inglés. Es necesario registrarse) http://sourceforge.net/forum/forum.php?forum_id=217623 php?forum http://sourceforge.net/forum/forum.php?forum_id=217622 6

ireport Primeros Pasos 7

ireport - Primeros pasos Configuración Menu Options->Opciones 8

ireport - Primeros pasos Configuración 1 2 1. Propiedades del entorno 3 4 Indicamos el Look & feel, idioma, opciones por defecto, etc 2. Directorios del compilador Directorio donde se encuentra el compilador de informes, donde se almacenan los informes generados, etc. 3. Opciones de Backup 4. Programas externos Podemos utilizar otros programas para visualizar informes 9

ireport - Primeros pasos Configuración Directorio de Compilación Indica donde se guardan los ficheros *.jasper (importante saberlo porque luego se cargan desde Java) 10

ireport - Primeros pasos Conexión con Hibernate Data -> Conexiones / Fuentes de datos 11

ireport Primeros pasos Crear la conexión a la fuente de datos 1º Creamos la conexión Conexión JDBC Segundo: Nombre de la Conexión y URL Primero: Conexión BD JDBC Tercero: probar la conexión 12

ireport - Primeros pasos Crear la Conexión a la fuente de datos 1º Creamos la Conexión Conexión Hibernate 2º: Nombre de la conexión 1º: Tipo: Conexión Hibernate 13

ireport - Primeros pasos Crear Conexión Hibernate 2º Modificamos el Classpath Incluimos: -la librería hsqldb.jar -Directorio i 'data' 'dt'donde d se encuentra la bdde hsqlbd Si es una conexión Hibernate añadir además los paths: Directorio de archivos fuentes (src) de nuestro proyecto Directorio de archivos binarios (bin) Directorio donde están los mappings Directorio donde está el archivo hibernate.cfg.xml 14

ireport - Primeros pasos Crear Conexión Hibernate 3º Reemplazamos la librería de conexión a HSQLDB que viene en IReport IREPORT\lib\hsqldb-1.7.1.jar 171jar Por la que viene con HSQLDB: HSQLDB\lib\hsqldb.jar Manteniendo el nombre existente (hsqldb- 1.7.1.jar) 15

ireport - Primeros pasos Primer informe: Uso del Asistente ireport proporcina un asistente que nos facilita la creación de informes sencillos Fichero-> Mago de Informes 5 pasos: 1º Seleccionar conexión y definir consulta SQL 2º Seleccionar campos 3º Indicar si se agrupa por algún campo 4º Definir apariencia (Layout) 5º Finalizar asistente Nota: Antes, recuerde arrancar el HSQLDB 16

ireport - Primeros pasos Primer informe: Uso del Asistente 1º Seleccionar conexión y definir consulta SQL 1º:Nombre de la Conexión 2º:Consulta SQL 17

ireport - Primeros pasos Primer informe: Uso del Asistente 2º Seleccionar campos 3º Indicar si se agrupa por algún campo Atributos de la consulta Atributos que aparecen en el informe 18

ireport - Primeros pasos Primer informe: Uso del Asistente 4º Definir apariencia (Layout) Columna: para cada registro un campo bajo de otro Tb Tabular: para cada registro un campo al lado del otro 5º Finalizar asistente Plantilla para los aspectos estéticos 19

ireport - Primeros pasos Primer informe: Uso del Asistente Al finalizar obtenemos el diseño del informe 20

ireport - Primeros pasos Primer informe: Uso del Asistente Para visualizar el informe: Construir -> Ejecutar informe (usando conexión activa) Guardará además el diseño en un documento xml 21

ireport - Primeros pasos Primer report: con Conexión Hibernate 1º Seleccionar la fuente de datos y definir una consulta HQL 1º: Conexión Hibernate 2º: consulta HQL 22

ireport - Primeros pasos Primer report: con Conexión Hibernate Puede ser necesario cambiar los tipos básicos por clases (p.e. int java.lang.integer) 23

ireport Aspectos Avanzados en el Diseño de Informes 24

ireport - Aspectos Avanzados en el Diseño de Informes Crear un informe nuevo: Fichero -> nuevo documento Nombre del informe Tamaño del papel Orientación Márgenes, columnas, etc. Modificar Propiedades: Editar -> Propiedades del Informe 25

ireport - Aspectos Avanzados en el Diseño de Informes Definer la consulta a la BD: Datos -> Consulta de informe Escriba una consulta SQL y pulse 'Leer Campos' para ejecutarl Consulta SQL 26

ireport - Aspectos Avanzados en el Diseño de Informes También puede construir la consulta en el Diseñador de Consultas. 27

ireport - Aspectos Avanzados en el Diseño de Informes Consultas en conexiones Hibernate: 1º Creamos Consulta HQL 2º La ejecutamos 4º Seleccionamos los atributos a incluir en el informe, pudiendo navegar a través de aquellos que sean objetos 3º Borramos atributos 28

ireport - Aspectos Avanzados en el Diseño de Informes Archivos Abiertos Ventana de propiedades Estructura del Documento (Elementos definidos) Zona de Diseño Librería de Elementos 29

ireport - Aspectos Avanzados en el Diseño de Informes Cada informe se divide en 7 secciones: 30

ireport - Aspectos Avanzados en el Diseño de Informes Cada informe se divide en 7 secciones (bandas): 1. Título: Define el título del informe. Se imprime una única vez al inicio del informe. Puede imprimirse en una página separada. 2. Cabecera de Página: Define una cabecera para las páginas del informe. Se imprime una vez por página. Todas las páginas del informe presentan la misma cabecera de página. 3. Cabecera de Columna: Define la cabecera de cada una de las columnas de la sección detalle. Generalmente, se usa para indicar el nombre de los atributos listados en la sección detalle. 31

ireport - Aspectos Avanzados en el Diseño de Informes Cada informe se divide en 7 secciones (bandas): 4. Detalle: en esta sección se define el diseño con el que se muestra cada registro de la base de datos. Se imprime tantas veces como registros se recuperen. 5. Pie de Columna: Esta sección aparece al final de cada columna definida en la sección detalle. 6. Pie de Página: Esta sección aparece al final de cada página del informe. 7. Resumen: Esta sección aparece al final del informe. Generalmente se usa para presentar información resumida o posibles datos estadísticos. ti 32

ireport - Aspectos Avanzados en el Diseño de Informes Elementos de un Informe: Elementos Gráficos: Línea: dibuja una línea en el informe Cuadrado: dibuja un cuadrado en el informe Elipse: dibuja una elipse en el informe Elementos de Texto: Texto estático: muestra un texto estático en el informe Campo de texto: muestra el texto obtenido a partir de una expresión java Sub-Informes: incluye un informe ya existente Elementos Especiales: Código de barras: genera un código de barras Gráficas: permite crear una gráfica de datos 33

ireport - Aspectos Avanzados en el Diseño de Informes Elementos de un Informe: Campo Código de Elipse de Texto Barras Gráfica Línea Cuadrado Texto Estático Imagen Marco SubInforme 34

ireport - Aspectos Avanzados en el Diseño de Informes Campos de Texto: muestra el texto obtenido a partir de una expresión java String Resultado de Operaciones Matemáticas Valor devuelto por funciones Java Parámetros o Variables Campos de la conexión de datos Nos permite visualizar la información extraída de la base de datos. 35

ireport - Aspectos Avanzados en el Diseño de Informes Propiedades del Campo de Texto Expresión Java Campo de BD: $F{NombreCampo} Seleccionar de la Lista TextField->Expression 36

ireport - Aspectos Avanzados en el Diseño de Informes Campos de Texto Se pueden añadir campos de texto asociados a campos de la BD, Parámetros y Variables arrastrando a la zona de diseño los elementos de la Librería 37

ireport - Aspectos Avanzados en el Diseño de Informes Ejemplo: Título Cabecera de Página Detalle Pie de Página 38

ireport - Aspectos Avanzados en el Diseño de Informes Ejemplo: Cb Cabecera de Página Titulo Detalle Pie 39

ireport - Aspectos Avanzados en el Diseño de Informes Ejemplo: Texto Estático Líneas Campos de Texto Asociados a la BD Campos de Texto Asociados a Funciones Java Campos de Texto Asociados a Variables 40

ireport - Aspectos Avanzados en el Diseño de Informes Ejemplo: Líneas Texto Estático Campos de Texto Asociados a la BD Campos de Texto Asociados a Funciones Java Campos de Texto Asociados a Variables 41

ireport - Aspectos Avanzados en el Diseño de Informes Parámetros: Son valores enviados al informe desde un programa externo Definición: Menú Contextual Estructura del Documento: add-> Parameter 42

ireport - Aspectos Avanzados en el Diseño de Informes Parámetros: Se suelen utilizar para parametrizar la consulta SQL asociada a la fuente de datos $P {NombreParámetro} 43

ireport - Aspectos Avanzados en el Diseño de Informes Variables: Son objetos usados para almacenar el resultado de calculos como subtotales, sumas, etc. Definición: Menú Contextual Estructura del Documento : add-> Variable Nombre de la Variable Tipo de la Variable 44

ireport - Aspectos Avanzados en el Diseño de Informes Variables: Existen Variables Predefinidas PAGE_NUMBER: número de páginas del informe COLUMN_NUMBER: número de columnas REPORT_COUNT: número de registros por la consulta asociada al origen de datos PAGE_COUNT: número de registros mostrados en la página actual COLUMNS_COUNT: COUNT: número de registros mostrados en la columna actual Acceso al Valor de una Variable: Campo de Texto -> $V {NombreVariable} 45

ireport - Aspectos Avanzados en el Diseño de Informes Ejemplo: from Pelicula l p where p.genero.nombregenero=${genero} 46

ireport - Aspectos Avanzados en el Diseño de Informes Subinformes Se utilizan para crear diseños Maestro-Detalle a partir de relaciones 1 a muchos Ejemplo: Director (Maestro) Lista de Peliculas (Detalle) 47

ireport - Aspectos Avanzados en el Diseño de Informes Subinformes Se crean dos informes por separado Uno para el detalle Otro para el maestro La consulta del informe detalle se define parametrizada from Pelicula p where p.genero.nombregenero = $P{GENERO} Se incluye el detalle como subinforme del maestro y se le pasa el parámetro correspondiente 48

ireport - Aspectos Avanzados en el Diseño de Informes Subinformes Para incluir un informe como subinforme se crea un componente subinforme dentro de la sección detalle del maestro Seleccionamos usar un informe existente Seleccionamos el fichero correspondiente al informe detalle Pulsamos en Siguiente 49

ireport - Aspectos Avanzados en el Diseño de Informes Subinformes Indicamos que se utilice para el subinforme la misma conexión que se utiliza en el informe maestro Pulsamos en Siguiente 50

ireport - Aspectos Avanzados en el Diseño de Informes Subinformes Indicamos la expresión definida en el maestro que se va a utilizar para dar valor al parámetro definido en el subinforme Pulsamos en Terminar Expresión en el Maestro Parámetro subinforme 51

ireport - Aspectos Avanzados en el Diseño de Informes Subinformes Una última modificación manual necesaria para que se visualicen los subinformes new HashMap($P{REPORT_ PARAMETERS_ MAP}) boton derecho-> Propiedades idd 52

ireport - Aspectos Avanzados en el Diseño de Informes Subinformes en relaciones muchos-a- muchos La consulta en el subinforme debe cambiarse. Por ejemplo, para listar todas las películaspor p director (desde la relación Pelicula-Director): Consulta en el informe Maestro: from Director d Lista de campos de Director: iddirector, nombre Consulta en el subinforme: from Pelicula p where $P{NOMBRE} IN p.directores.nombre Lista de campos de Pelicula: titulo, fecha Aquí, directores es el conjunto definido en la clase Pelicula que guarda las instancias de directores de una película. 53

JasperReport Qué es JasperReport? 54

JasperReport - Qué es JasperReport? Librería Java para la creación de informes OpenSource Generación de informes en archivos PDF, HTML, XLS, CSV y XML. Se pueden utilizar diversos orígenes de datos: JDBC, TableModels, JavaBeans XML, Hibernate, and CSV. Puede ser incluida en cualquier proyecto Java (incluyendo J2EE y Aplicaciones Web) 55

JasperReport - Qué es JasperReport? Documentación y Libreria (Registrado): http://jasperforge.org/sf/projects/jasperreportsorg/sf/projects/jasperreports API: http://jasperreports.sourceforge.net/api/ 56

JasperReport Configuración de Eclipse 57

JasperReport - Configuración de Eclipse Incluir la librería JasperReport en el proyecto Eclipse jasperreports-1.2.2.jar Project ->Properties ->Java Build Path-> Libraries 58

JasperReport - Configuración de Eclipse Incluir además las siguientes librerías: Jakarta Commons Digester Component (versión 1.1 o posterior) http://jakarta.apache.org/commons/digester/ commons-digester.jar Jakarta Commons BeanUtils Component (versión 1.1 o posterior) http://jakarta.apache.org/commons/beanutils/ commons-beanutils.jar Jakarta Commons Collections Component (versión 1.0 o posterior) http://jakarta.apache.org/commons/collections/ commons-collections.jar Jakarta Commons Logging Component (versión 1.0 o posterior) http://jakarta.apache.org/commons/logging/ commons-logging.jar También disponibles en el direcotrio /lib de ireport 59

JasperReport Visualizando informes desde Hibernate 60

JasperReport - Visualizando informes desde Hibernate La comunicación entre IReport y JasperReport se lleva a cabo a través de un conjunto de parámetros definidos en un objeto HashMap Cuatro Pasos 1. Creación de Objetos Session sesion= UtilidadHibernate.getSessionFactory().openSession(); opensession(); HashMap parametros = new HashMap(); 2. Definición de Parámetros // Obligatorio: Pasamos la fuente de datos (sesión Hibernate) parametros.put(jrhibernatequeryexecuterfactory.parameter_ put(jrhibernatequeryexecuterfactory HIBERNATE_SESSION,sesion); // Opcionales: parámetros del informe parametermap.put("genero","comedia"); 61

JasperReport - Visualizando informes desde Hibernate 3. Paso de Parametros al informe String filename= "reports/reportparametros.jasper"; JasperPrint informe= JasperFillManager.fillReport(fileName, parametermap); 4. Visualización del Informe JasperViewer.viewReport(informe, false); 62

JasperReport - Visualizando informes desde java Ejemplo Completo (ejecuta el informe de la página 46).. import net.sf.jasperreports.engine.jasperfillmanager; import net.sf.jasperreports.engine.jasperprint; import net.sf.jasperreports.engine.query.jrhibernatequeryexecuterfactory; import net.sf.jasperreports.view.jasperviewer; import net.sf.jasperreports.engine.jrexception;.. JasperPrint informe = null; Session sesion= UtilidadHibernate.getSessionFactory().openSession(); HashMap parametros = new HashMap(); parametros.put(jrhibernatequeryexecuterfactory. PARAMETER_HIBERNATE_SESSION,sesion); parametros.put("genero","comedia"); try { String filename= "reports/reportparametros.jasper"; informe= JasperFillManager.fillReport(fileName, parametros); } catch (JRException e){e.printstacktrace();} JasperViewer.viewReport(informe,false); 63

JasperReport - Visualizando informes desde java Para obtener más información consultar el API de las siguientes clases: JRHibernateQueryExecuterFactory: http://jasperreports.sourceforge.net/api/net/sf/jasperreports/engine/qusourceforge ery/jrhibernatequeryexecuterfactory.html JasperReport: http://jasperreports.sourceforge.net/api/net/sf/jasperreports/engine/jassourceforge perreport.html JasperFillManager: http://jasperreports.sourceforge.net/api/net/sf/jasperreports/engine/jassourceforge perfillmanager.html JasperPrint: http://jasperreports.sourceforge.net/api/net/sf/jasperreports/engine/jassourceforge perprint.html JasperViewer: http://jasperreports.sourceforge.net/api/net/sf/jasperreports/view/jrviesourceforge wer.html 64