Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube
JC Mouse Bolivia
Index / iReport / iReport: Reportes con imágenes de la base de datos

iReport: Reportes con imágenes de la base de datos

Autor jc mouse viernes, febrero 13, 2015

Este post esta dedicado a la creación de reportes con imágenes usando el programa iReport Designer.

reporte con imagen

Cuando se desarrolla un software con el lenguaje  java y base de datos que hace uso de imágenes, estos archivos de imagen por lo general se almacenan en un directorio junto a la aplicación y en la base de datos se registra solamente los nombres de las imágenes. El problema surge cuando queremos mostrar estos registros en un reporte junto a sus imágenes. En el siguiente tutorial te mostramos una forma de mostrar esas imágenes en los reportes.

Necesitamos

  • iReport 5.1
  • Servidor MySQL

Tiempo: 15 minutos

Nivel: Intermedio

TUTORIAL

Paso 1: Base de Datos MySQL

Crea una base de datos y añade una tabla llamada «people«, su estructura será la siguiente:

CREATE TABLE people (
  people_id int(10) NOT NULL auto_increment,
  people_name varchar(64) NOT NULL,
  people_mail varchar(32) NOT NULL,
  people_photo varchar(12) NOT NULL,
  PRIMARY KEY  (people_id)
);

Nuestra tabla esta formada por cuatro campos, el campo de nuestro interés es el campo «people_photo» que es el campo donde se almacena el «nombre de la imagen» de la forma «tu_imagen.jpg«.

table people

Paso 2. Conexión a la base de datos

Abre iReport Designer y crea un nuevo reporte en blanco. A continuación crea una nueva conexión a la base de datos que se crea en el paso 1

Seguidamente se debe crear el Report Query, la consulta es «select * from people»

Paso 3. Diseño del reporte

Haciendo uso de las herramientas de iReport Designer, crea el reporte como muestra la siguiente imagen:

desing report

Importante: Cuando agregues el objeto «image» te pedirá que indiques un nombre de archivo, presiona «Cancelar» para que se agregue un objeto image vacío.

Hasta este punto puedes ejecutar el reporte y tendrás algo como esto:

preview report

El resultado es un reporte como cualquier otro, no muestra imagen alguna porque no hay ninguna asignada al objeto image. Si todo esta bien haste este punto, podemos continuar.

Paso 4. Agregar las imágenes

La base de datos almacena solo los nombres de las imágenes (imagen.jpg),  necesitamos el resto de la ubicación de los archivos JPG, para este ejemplo todas las imágenes se encuentras en una sola carpeta de nuestra disco duro. Para indicarle al reporte esta ubicación, creamos un «parámetro de entrada» llamado «dirPhoto» de tipo «java.lang.String«

Selecciona el objeto image y dirígete a la ventana propiedades, busca la propiedad «Image Expression» y presiona el botón […] para abrir la ventana de propiedades. En esta ventana escribimos la siguiente expresión:

expression image

Lo que hacemos con esta expresión, es crear un objeto FILE indicando con el parámetro de entrada «$P{dirPhoto}» la ruta de la carpeta que contiene nuestras imágenes y con el campo «$F{people_photo}» el nombre de la imagen que se extrae de la base de datos. Cuando se ejecute el reporte se formara un File de tipo «c:\tu_aplicacion\imagenes\foto_001.jpg«, «c:\tu_aplicacion\imagenes\foto_002.jpg«, etc.

Ejecuta el reporte

reporte con imagen

Para utilizarlo desde tu aplicación java, solo debes pasar el parámetro de entrada con la ruta de tu carpeta de imágenes.

Archivos utilizados en este tutorial «Reporte con imagenes»

FIN

Tags

Si te ha gustado podrías compartirlo o dejar un comentario. ¡Muchas gracias!
Autor: JC Mouse

Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.

Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye

Enjoy! :)

También Te Podría Interesar

«Hola Mundo» en kotlin con Eclipse

«Hola Mundo» en kotlin con Eclipse

Kotlin es un lenguaje de programación de tipado estático que corre sobre la máquina virtual de Java y que también puede...

Como capturar cambios del Slider en JavaFX

Como capturar cambios del Slider en JavaFX

En este tutorial veremos como usar el componente Slider de JavaFX , capturas los cambios que realice el usuario y con es...

Conversor decimal a binario

Conversor decimal a binario

Desde que Google anuncio de que dejara de dar soporte al plugin de Eclipse y se concentrara en Android Studio, quienes t...

Operador de Complemento bit a bit «~»

Operador de Complemento bit a bit «~»

Operador de Complemento bit a bit unario Entre los operadores a nivel de bits de uso más común en java tenemos al operad...

GridView con imagenes en miniatura

GridView con imagenes en miniatura

Entre las muchas aplicaciones que hay en la playstore de google están las galerías de fotos de chicas 🙂 que tantos nos e...

Crear ayuda HTML para programa con JavaFX Swing

Crear ayuda HTML para programa con JavaFX Swing

En este post veremos como crear una aplicación de ayuda al usuario similar al extinto javahelp. Pero en esta oportunidad...

5 comentarios en “iReport: Reportes con imágenes de la base de datos”

  1. es mia khalifa? jajja

  2. Marco Osnaya dice:

    Muchas gracias, tu ejemplo es claro y conciso me ayudo mucho para implementarlo en un pequeño proyecto que estoy haciendo, de nuevo gracias.

  3. Saby dice:

    Hola, muchas gracias por el tuto, me sirvio muchismo. Solo tengo una duda, Como puedo hacer para que el reporte me salga en dos columnas, sin repetir el valor de los resultados(pagina en 2 columnas no me sirve). Necesito imprimir carnet de 8 por paginas. Agradeceria tu ayuda. Saludos

  4. brandon dice:

    hola buenas tardes amigo duda sobre ese mismo pero para ejecutarlo ya desde php me pueden ayudar

Los comentarios estan cerrados

Comparte lo que sabes

Categorias

Últimas entradas

En este post veremos un ejemplo sencillo de como descargar desde Internet archivos de cualquier tipo (*.jpg, *.png, *.gi...

FFmpeg es una colección de software libre capaz de decodificar, codificar, transcodificar, mux, demux, transmitir, filtr...

The Age of AI o «La era de la Inteligencia Artificial»,  es una serie de 8 documentales de Youtube Original, presentados...

La comunidad 3D Buzz  era una de los lugares donde la gente curiosa de aprender a realizar videojuegos buscaba recursos...

Herramientas

Generador de Enlaces a Whatsapp