2. INSTALACIÓN DE IREPORT DESIGNER 5.6.0
Una de las herramientas más utilizadas y al mimo tiempo fácil de implementar para generar reportes p
rofesionales en Java son las APIs de JasperReports, al mismo tiempo cuenta con un Diseñador de Re
portes Visual, que permite elaborar formatos vistosos y útiles en cuestión de minutos.
En este tutorial se mostraran los pasos para instalar las APIs de JasperReports, además de generar u
n reporte sencillo para ser visualizado desde una aplicación desarrollada en NetBeans 8.0.
3. 1. Para comenzar hay que descargar las APIs en JasperReports Library para este ejemplo se utilizara la versión 6.
0.
2. La siguiente herramienta que se utilizara es iReport Designer que es un editor visual de reportes en su versión
5.6.0
Nota: Las versiones de software utilizadas son JasperSoft Community con licencia AGPL, lo que permite su uso gr
atuito con algunas limitaciones.
3.Una vez descargado el software se realizara la instalación comenzando con iReport Designer, antes de instalarl
o hay que verificar la configuración de Java en Windows, para esto hay que abrir la configuración avanzada del sis
tema presionando la combinación de teclas Windows + Pausa
4. 4.En las propiedades del sistema se hace clic en Variables de entorno para mostrar l
as variables que permiten configurar el acceso a archivos de configuración del siste
ma operativo.
5. 5.En las variables de entorno hay que verificar si se tiene la variable JAVA_HOME
, en caso de no estar esta variable, hay que hacer clic en Nueva para crear esta v
ariable, que es necesaria para la ejecución de iReports Designer.
6. 6.Si es necesario crearla se le darán los siguientes valores:
Nombre de la variable: JAVA_HOME
Valor de la variable: C:Program FilesJavajdk1.7.0_45 (varia dependiendo de la versión del JDK instalado)
Después de dar los valores se hace clic en Aceptar y se Aceptan todos los cambios. Con esto ya esta lista la configu
ración para hacer funcionar a iReports.
7.Para iniciar la instalación se hace clic en el archivo iReport-5.6.0-windows-installer.exe
7. 8.Clic en Next para leer la licencia de uso, que como ya se menciono anteriormente es AGPL.
9.Para aceptar la licencia se hace clic en I Agree y se procede a elegir los elementos a instalar, en este c
aso solo esta disponible iReport.
8. 10.Después se hace clic en Next y con eso el asistente preguntara la ruta de instalación del software.
11. Una vez que se elige la ruta de instalación, el asistente preguntara el nombre del Menú donde se insta
lara el acceso directo a iReport.
9. 12. Al hacer clic en Install se realizara la instalación con los parámetros seleccionados, este proceso durara
un par de minutos.
13. Al finalizar la instalación se muestra un reporte final y permite iniciar por primera vez a iReport 5.6.0.
10. 14. Al iniciar Japersoft iReport Designer 5.6.0 se muestra una interfaz sencilla con 3 pasos para reali
zar un reporte. Estos pasos serán vistos en el siguiente tutorial.
12. Lo primero que se suele hacer una vez que se dispone de un servidor de
aplicaciones es configurar las conexiones a las bases de datos, para ello en
weblogic permite configurar un origen de datos JDBC o data source JDBC, este es
un objeto enlazado al árbol JNDI que proporciona conectividad de base de datos a
través de un pool de conexiones JDBC.
Las aplicaciones pueden buscar un origen de datos en el árbol JNDI y tomar
prestada una conexión de base de datos de un origen de datos. En el ciclo normal
de desarrollo de una aplicación fusión con ADF, inicialmente en la etapa de
desarrollo cuando implementamos la capa del negocio en el proyecto Model de
nuestra aplicación ADF fusión se crea una conexión a la base de datos haciendo
uso de una conexión JDBC vía URL, esta se usaa lo largo del proyecto
específicamente en elAplication Module para obtener conectividad a la base de
datos y lograr crear el modelo usando Business Components
13. Esto hará que en el navegador se despliegue la pantalla que resume los orígenes de datos existentes en nuestro
dominio de weblogic. En la tabla orígenes de datos pulsen en el botón “Nuevo”.
14. A continuación se desplegará la pantalla de inicio de creación de un nuevo origen de datos JDBC,
determinamos un nombre único para este origen de datos para nuestro caso “SERVIDORUTNDS”, se
determina la ruta para el árbol JNDI “jdbc/SERVIDORUTNDS”, y finalmente se determina el tipo de base de
datos para nuestro caso seleccionamos “Oracle”.
15. Pulsamos siguiente, y a continuación la tarea es establecer las propiedades a usar para identificar el nuevo origen
de datos JDBC, en la opción “Controlador de Base de datos” se listan todos los controladores que Oracle
Weblogic Server soporta explícitamente, para nuestro caso he seleccionado la opción “Oracle´s Driver
thinforinstanceconnections: versión 9.0.1.9.2.0.10.11” esto pues la base de datos que he usado es Oracle 10g,
siendo este controlador el de mejor rendimiento para este base de datos en base a mi experiencia.
16. Pulsamos siguiente, ahora debido a que el controlador que se ha seleccionado no es XA para la creación de la
conexión de base de datos en el nuevo origen de datos, debemos determinar si este controlador soporta
transacciones globales, para ello nos aseguramos que la opción “Soporta Transacciones Globales” este chequeada,
esto pues es importante que nuestro origen de datos participe en las transacciones globales mediante la
optimización de transacciones LLR (Registro de último recurso) y que la confirmación se realice en una sola fase.
Personalmente recomiendo esta opción en vez de emular la confirmación en dos fases.
17. Pulsamos siguiente, ahora la tarea es determinar las propiedades de conexión, estas propiedades son editables
en cualquier momento y se aplican los cambios automáticamente sin necesidad de reiniciar el servidor, esto es
uno de los puntos importantes de usar un origen de datos JDBC , pues en un escenario real, las ip’s y usuarios
por lo general varían en función de las necesidades tecnológicas de la empresa y lo más importante es aplicar
los cambios sin mayor esfuerzo y sin echarle mano al código de nuestras aplicaciones que estén desplegadas y
ejecutándose.
18. Presione siguiente, a continuación es necesario probar la disponibilidad de la base de datos y las propiedades de
la conexión que se ha especificado anteriormente. Para ello presione “Probar configuración” si la prueba se ha
realizado correctamente se desplegara un mensaje indicando “Prueba de conexión correcta”.
19. Presione siguiente, a continuación se debe seleccionar uno o más destinos para desplegar el nuevo origen de
datos JDBC. Si no selecciona ninguno, el origen de datos se creará, pero no se desplegara, y se tendrá que
desplegar posteriormente, bajo mi experiencia lo ideal es desplegar de una vez el origen de datos, para ello
asegúrese que en la tabla Servidores, este chequeado la opción AdminServer que es el servidor actual.
20. Una vez desplegado el origen de datos en el servidor actual, se presenta la siguiente pantalla donde se listan los
orígenes de datos actuales incluyendo el nuevo origen de datos que se acaba de crear, este origen de datos está
activo y listo para usar sin necesidad de reiniciar el servidor.
21. Ahora la pregunta a plantearse, es¿cómo usar el origen de datos creado en la aplicación que se ha
desarrollado?, la respuesta es la siguiente:Abrimos la aplicación haciendo uso de jdeveloper, nos ubicamos
sobre el proyecto Model, y dentro de este abrimos el Aplication module.
22. Seleccionamos la sección Configurations del Aplication Module.
Ahora debemos configurar el tipo de conexión a usar para las configuraciones del Aplication Module tanto para la
configuración compartida como la configuración local. Para ello seleccione la configuración y presione editar o
haga doble clic, esto desplegara en pantalla la siguiente ventana, donde inicialmente el tipo de conexión por
defecto es “JDBC url”, debemos cambiar a la opción “JDBC DataSource” en el panel “ConnectionType”, y en el
campo “DataSourceName” especificamos el nombre del data Source creado anteriormente en weblogic, para ello
se ingresa el valor “java:comp/env/jdbc/SERVIDORUTNDS” que especifica la ruta completa del árbol JNDI de
origen de datos “SERVIDORUTNDS” en el servidor. Finalmente se presiona aceptar y la aplicación esta lista para
usar el origen de datos que se ha creado.
24. Para esto vamos al menú "File -> New...". Con esto se abrirá la ventana de "New File" en la que
seleccionaremos el formato de nuestro reporte. En mi caso seleccionaré la plantilla "Wood" aunque
pueden seleccionar la que ustedes deseen, y hacemos clic en el botón "Launch Report Wizard"
25. Este wizard nos ayudará a crear un reporte 100% funcional en 6 pasos (en realidad
5 ya que empezamos directamente en el paso 2) que podremos ver desde el
mismo iReport sin necesidad de escribir una solo línea de código Java.Estos 7
pasos son:
1. Selección de la ubicación en la que se guardará nuestro reporte.
2. Selección del datasource e introducción del query para obtener los datos que
nos interesan.
3. Selección de los datos que queremos mostrar en el reporte.
4. Creación de grupos para el reporte (se explicará en un post posterior).
5. Selección del layout o acomodo de los datos en el reporte
6. Felicitación por tenerminar nuestro reporte.
Los pasos interesantes son el 3 y el 4, así que será en estos en los que nos
enfocaremos más.
El paso 1 se realiza de forma automática, así que no tenemos mucho que hacer en
él. En el paso 2 (en donde comenzamos) seleccionamos el directorio en el que
queremos guardar nuestro reporte y el nombre que tendrá.
26. Esto ocurre porque, efectivamente, en el textarea no tenemos una consulta válida (de hecho no tenemos ninguna). Por lo
que ahora corregiremos eso. Para esto tenemos 3 opciones:
1. Escribir una consulta nosotros mismos de forma directa.
2. Cargar una consulta que tengamos guardada en algún archivo .sql o .txt.
3. Crear una consulta usando el "diseñador de consultas".
Nosotros haremos uso del diseñador de consultas. Hacemos clic en el botón "Design query" con lo que se abrirá una
nueva ventana que está dividida en tres secciones.
27. La primera sección es la de la estructura de la consulta. Aquí básicamente podremos cambiar entre las sentencias
que estamos editando (SELECT, WHERE, ORDER BY, etc.). La segunda sección es la de los elementos de
nuestra base de datos (tablas, vistas, y temporales locales). Aquí podremos seleccionar los elementos de los que
queremos obtener datos para la consulta. Finalmente la tercer sección nos muestra los elementos que hemos
seleccionado de la segunda sección para que podamos seleccionar los datos a obtener.
La consulta que haremos será para obtener todos los datos de la tabla "participantes", con excepción del "ID". Para
esto hacemos doble clic sobre el nombre de la tabla "participantes" en la segunda sección de la ventana que
tenemos abierta. Con esto aparecerá en la tercer sección otra ventana con el título "participantes" y un conjunto de
checkboxes, cada uno con un campo de nuestra tabla. Para generar la consulta que nos interesa solamente
seleccionamos todos los checkboxes (con excepción del "ID") y veremos que la consulta se genera en la primer
sección. Ya solo damos clic en el botón "OK".
28. Con esto ya tendremos nuestra consulta en el textarea correspondiente y podemos continuar con el paso 4, para
lo que hacemos clic en el botón "Next".
En este paso solo tenemos que seleccionar cuáles campos del query generado en el paso anterior queremos
que se muestren en el reporte. Como nosotros queremos que se muestren todos pasamos todos los campos del
lado izquierdo al lado derecho y hacemos clic en el botón "Next".
29. Ahora en el paso 5 debemos seleccionar cómo queremos que los datos sean agrupados. Esto lo explicaré en
algún otro post, pero por el momento dejemos todo en blanco y demos clic en el botón "Next".
El último paso es el solamente una felicitación por haber creado un nuevo reporte.
Ahora hacemos clic en el botón "Finish" y ya podremos ver la plantilla de nuestro reporte.
31. Puede crear, editar o ver un campo de objeto cuyo valor se calcula a partir de valores de otros campos. Estos
campos calculados pueden existir en el mismo objeto o en otro objeto relacionado.
Los campos calculados tienen las siguientes características:
·Son siempre de sólo lectura.
·Se pueden utilizar en informes
·Se pueden añadir a las vistas de Contexto, Detalles, Actividad, Lista, Lista filtrada de la página de inicio, Lista
filtrada, Actividad y Carpetas en la interfaz de usuario IBM® OpenPages GRC Platform.
·Deben tener nombres de campo exclusivos. La adición de más de un campo calculado con el mismo nombre de
campo en la misma vista dará como resultado un error.
Si desea importar (cargar) y exportar (volcar) definiciones de campos calculados, debe utilizar la
herramienta ObjectManager. Para obtener detalles, consulte Importación de las definiciones de campo calculado.
Los campos calculados requieren un servidor Cognos instalado y activo ya que utilizan Cognos Computation
Handler. Si un campo calculado se ejecuta en la aplicación y el servidor Cognos no está disponible, los usuarios
visualizan el siguiente mensaje: Cognos no está disponible. Póngase en contacto con el administrador del sistema.
32. Procedimiento
1. En Report Studio, modele el campo calculado en un objeto de cálculo. Para obtener detalles,
consulte Modelado de un nuevo campo calculado en Cognos.
2. En la interfaz de usuario de la aplicación OpenPages GRC Platform:
a. Defina el campo calculado. Para obtener detalles, consulte Definición de un campo calculado.
b. Vuelva a generar el entorno de creación de informes. Para obtener detalles, consulte Actualización del
entorno de creación de informes.
Hay dos formas de crear campos calculados en el Report Designer. El primer método es agregar un cuadro de
texto al informe e ingresar una expresión en el mismo que se ejecutará cuando se genere el informe. Los pasos
para este método se describen a continuación, incluso los ejemplos de expresión. El segundo método es agregar
un campo Calculado no delimitado al informe. Solo puede hacer esto desde el árbol Sección de informes. Haga
clic con el botón derecho del ratón en el nodo Calculado del árbol y seleccione Agregar. Esto creará un campo no
delimitado que se puede utilizar en el informe. La expresión del campo no delimitado se debe establecer en la
propiedad Fórmula del campo. Una vez que se establece la Fórmula, arrastre el campo sobre la sección en el
informe en donde desea utilizarlo.
34. Jasper Report es una librería para la generación de informes. Está escrita en java y es libre. http://jasperforge.org/ El
funcionamiento consiste en escribir un xml donde se recogen las particularidades del informe. Este xml lo tratan las
clases del Jasper para obtener una salida que pueden ser un PDF, XML, HTML, CSV, XLS, RTF, TXT.
Para generar el xml, o el compilado .jasper les recomiendo descargar la herramienta iReport que es un Entorno
Gráfico que está implementado en java y se integra perfectamente con el Jasper
Report http://jasperforge.org/sf/projects/ireport
Aunque JasperReports se utiliza principalmente para capacidades de reporte a las aplicaciones basadas en la Web a
través de la API de Servlet, no tiene absolutamente ninguna dependencia de la API Servlet o cualquier otra biblioteca
de Java EE. No hay nada que nos impida la creación de aplicaciones de escritorio Java para generar informes con
JasperReports.
JasperReports nos permite separar los datos en secciones. Estas secciones incluyen:
• El título del informe, que aparecerá una vez en la parte superior del informe.
• ·Un encabezado de página, que aparecerá en la parte superior de cada página.