Informes con código HTML

5
33204

Informes con código HTML

Introducción

En anteriores tutoriales disponibles en Adictosaltrabajo.com
hemos hablado tanto de iReport
como de JasperReport,
enseñandoos algunas de sus funcionalidades principales.

Una de las muchas funcionalidades que nos aporta JasperReport
es poder insertar código HTML dentro de nuestros informes.

En este turorial vamos a ver un ejemplo en el que tendremos en una base
de datos cadenas de textos con etiquetas HTML y veremos como hacer que
se formateen correctamente en nuestro informe PDF.

Para ayudarnos a hacer esto utilizaremos iReport.

Ejemplo

Aquí
les dejo un script Sql de creación de las tablas y datos del
ejemplo que vamos a usar en este tutorial.

Lo primero de todo es crear el diseño de nuestro informe de
ejemplo

diseño de informe de ejemplo

Ahora seleccionamos el text element $F{mensaje} y
hacemos click
en el botón derecho del ratón y pulsamos en Propiedades

propiedades

Nos
aparecerá una ventana de configuración del text element, nos
vamos a la pestaña Font.
Una vez aquí tenemos que marcar la
opción de Is styled text

y seleccionar CP1252 Western European ANSI
como el tipo de codificación del PDF. Cuando marcamos esta opción JasperReport considera el contenido del text element como
un código XML e intenta parsearlo. En nuestro caso al usar
HTML nos lo formatea según los tags utilizados.
Tened cuidado, porque podemos estar acostumbrados a usar tags HTML como <br>, pero estos tags no son etiquetas bien formadas de XML aunque los navegadores webs las permitan. Sin embargo <br/> si es una etiqueta XML bien formada.

styled text

Una vez hecho esto, hacemos
lo mismo para el otro text element $F{asunto} y ejecutamos nuestro
informe para ver los resultados.

Podemos ver como hemos logrado formatear
a nuestro gusto el texto usando tags de HTML. Pero cuidado que no se
soportan todas las etiquetas, sólo unas cuantas, ¿Cuales?
Dentro de la página del proyecto de JasperReport existe un ejemplo de textos con estilo donde se indican TODAS las etiquetas soportadas.

http://www.jasperforge.org/images/documentation/jasperreports/samples/StyledTextReport.html  y también un informe de ejemplo http://www.jasperforge.org/images/documentation/jasperreports/samples/StyledTextReport.jrxml

Conclusión

Como véis, la inserción de código HTML dentro de
nuestros informes es muy sencillo. Nosotros, los miembros de Autentia,
intentamos acercaros ese conocimiento a través de nuestros
tutoriales. Pero si la solución a vuestros problemas no se
encuentra en
www.AdictosAlTrabajo.com
, ya sabéis que
podéis poneros en contacto con nosotros para que os
asesoremos y formemos.

5 Comentarios

  1. hola,
    estoy realizando un reporte con iReport y JasperReports. Una de las variables se trata de un CLOB con tags HTML. No todos los tags son reconocidos, como por ejemplo, la estructura de tabla. ¿Podéis ayudarme?
    Muchas gracias.

  2. Yo he bajado ireport pero me desanimé porque trabajo con php y para llamar un reporte de este tipo con php, es dificil (no me gusta lo de crear un puente). Sabe alguien de qué forma podría ser más sencilla la llamada? ¿o si tienen algún otro reporteador, podrían indicarme cuál?

    Gracias…

  3. Pero cuidado que no se soportan todas las etiquetas, sólo unas cuantas, ¿Cuales? Dentro de la página del proyecto de JasperReport existe un ejemplo de textos con estilo donde se indican TODAS las etiquetas soportadas. Cuales… esos link no funcionan…

Dejar respuesta

Please enter your comment!
Please enter your name here