Você está na página 1de 39

DOCUMENTACIN

Cdigo :

T01F04
Versin: 1 Pgina 1 de 39


SGC ISO 9001- CaseWare Ingeniera S.A.


INFORMACIN DEL MANUAL

NOMBRE IRS Nivel 3 Fecha: 13 de Abril 2007 Versin: IRS



PRESENTACIN


Iceberg Reports Server es una aplicacin en entorno Web, diseada para
proveer una solucin fcil y flexible para la administracin y generacin de
reportes, que brinda acceso va Browsers, administracin de parmetros,
generacin dinmica de reportes y un modo flexible e intuitivo para la
calendarizacin, por mencionar algunas de sus posibilidades.

sta aplicacin centraliza y se enfoca exclusivamente en la generacin de
reportes dando libertad de generar reportes de diferentes mdulos que
interacten con ICEBERG.

Por otro lado, Iceberg Reports Server se acoge a polticas de seguridad que
previenen que usuarios con permisos insuficientes puedan generar contenidos
no aptos a su rol, esto logrado por la relacin reporte-grupo-usuario-rol.

Otra de las virtudes de Iceberg Reports Server, es la capacidad de calendarizar
los reportes, esto permite que un reporte que sea requerido generar cada vez
en un periodo de tiempo sea enviado al correo del usuario. Los periodos que
Iceberg Reports Server puede calendarizar reportes estn Once (Una vez),
Daily (Diario), Weekdays (fines de semana), Weekly (Semanalmente), Monthly
(mensualmente).






DOCUMENTACIN

Cdigo :

T01F04
Versin: 1 Pgina 2 de 39


SGC ISO 9001- CaseWare Ingeniera S.A.


OBJETIVO


El objetivo de este documento es el de guiar a los usuarios en el manejo
adecuado de Iceberg Reports Server. Est organizado y enfocado hacia los
usuarios para que hagan uso de este sistema Generador de Reportes de
Iceberg Administrativo y Financiero.

Con este manual usted podr aprender a instalar, configurar, administrar y
realizar reportes en iReports, entre otras ms tareas relacionadas con los
Iceberg Reports Server.

En caso de tener alguna duda sobre el significado de alguna de las palabras
dentro del contexto de Iceberg Reports Server le pedimos el favor que se
remita al glosario de este manual.










DOCUMENTACIN

Cdigo :

T01F04
Versin: 1 Pgina 3 de 39


SGC ISO 9001- CaseWare Ingeniera S.A.





Iceberg Reports Server provee una solucin en cuanto a Administracin y
generacin de reportes del Sistema financiero Iceberg, va Web.

Actualmente Iceberg Reports Server se encuentra en la versin 2.0F

Requerimientos

Sistema Operacional

La aplicacin no tiene restriccin con algn sistema operacional, puede
funcionar adecuadamente en cualquier sistema operacional donde funcione
Oracle y java.

Requisitos Necesarios

Para la instalacin de Iceberg Reports Server es necesario que la mquina en
la que sea instalado tenga como mnimo los siguientes productos:

Requisitos Necesarios
Java 1.5 (SE SDK) +
Apache Tomcat (5.0 +)
Iceberg-RS v2.0
Oracle (o una base de datos donde instalar las tablas propias de
Iceberg-RS)
Oracle (donde se encuentre Iceberg y los datos para la generacin
de los reportes)
Reportes (Archivos *.jasper)
Navegador (IE5+, Mozilla Firefox)
Tabla 1. Tabla de Requisitos Necesarios

Requisitos Opcionales

Se sugiere la instalacin de los siguientes productos para poder explotar al
mximo la presentacin de los reportes generados en Iceberg Reports Server.
Captulo1
Instalacin Iceberg Reports Server

DOCUMENTACIN

Cdigo :

T01F04
Versin: 1 Pgina 4 de 39


SGC ISO 9001- CaseWare Ingeniera S.A.



Requisitos Opcionales
Servidor de aplicaciones que sea contenedor de Servlets. (En el
caso de que no se quiera montar sobre Apache Tomcat)
Adobe Acrobat Reader* un visor de archivos en formato PDF,
Microsoft Excel
Microsoft Word
Navegador (IE5+, Mozilla Firefox) o navegador que soporte DOJO y
Open Rico
Visor de Imgenes
Tabla 2. Tabla de Requisitos Opcionales

Instalacin

Para el correcto funcionamiento de IRS, son necesarios los siguientes
componentes:

Repositorio de IRS

Consta de 33 objetos, los cuales servirn para persistir toda la informacin
referente a los reportes, parmetros de reportes, usuarios, calendarizacin, etc.

Para la instalacin de este repositorio se entregar un archivo install.sql que
debe ser ejecutado, al terminar la ejecucin se crear un archivo .log con la
confirmacin de los objetos y datos instalados o con los errores producidos.

En caso de Presentarse errores en el instalador es necesario que se
comunique con Caseware Ingeniera para darle soporte.

Repositorio Iceberg

Es la Fuente de datos para la ejecucin de las consultas que generan los
reportes.

Los Reportes.

Los reportes publicados en IRS pueden ser creados en la aplicacin a travs
de consultas o pueden venir de archivos con extensin .jasper, en el segundo
caso es necesario colocar estos archivos en la carpeta de fuentes como se
explica a continuacin.

Carpetas Necesarias

Es necesario crear las siguientes carpetas en el sistema de archivos del
sistema operativo del servidor con permisos de escritura y lectura, las cuales

DOCUMENTACIN

Cdigo :

T01F04
Versin: 1 Pgina 5 de 39


SGC ISO 9001- CaseWare Ingeniera S.A.


ser necesaria para almacenar y ejecutar los reportes.

Ejemplo Rutas (Windows):

<letra_unidad>:\...\<iceberg-RS HOME>\
<letra_unidad>:\...\<iceberg-RS HOME >\reports
<letra_unidad>:\...\<iceberg-RS HOME >\temp

Ejemplo Rutas (Solaris):

<nombre_disco>//<iceberg-RS HOME>/
<nombre_disco>//<iceberg-RS HOME>/reports
<nombre_disco>//<iceberg-RS HOME>/temp

Una vez Instalado Iceberg Reports Server, se debe configurar las anteriores
rutas en el men creado para este fin:

Administration -> Settings -> Base Directory
Administration -> Settings -> Temp Directory

El acceso a este men solo es posible por un usuario con los permisos
suficientes.

Esquema de Seguridad











Imagen 1. Esquema de Usuarios en Iceberg Reports Server


Durante la instalacin de Iceberg reports Server se hace necesario que el
usuario dueo de la base de datos (o un usuario con los permisos suficientes)
de Iceberg dbowner sea utilizado para crear usuarios, proveer permisos y
crear sinnimos de objetos para los siguientes usuarios:

irssys.
Este usuario tiene permisos de Escritura, Actualizacin, Borrado en todos los
objetos del repositorio de Iceberg Reports Server.

DOCUMENTACIN

Cdigo :

T01F04
Versin: 1 Pgina 6 de 39


SGC ISO 9001- CaseWare Ingeniera S.A.



irsadmin.
Este usuario tiene permisos de solo lectura sobre objetos de iceberg, para la
ejecucin de los reportes (por el hecho de ser administrador ste usuario es el
nico capaz de acceder los mens de configuracin de IRS).

irsuser.
Este usuario y en adelante todos los que se quieran crear, solo tienen permisos
de lectura sobre las tablas de iceberg que se utilicen en los reportes.

Cabe destacar que al finalizar de la instalacin y puesta en marcha, Iceberg
Reports Server no utiliza ni guarda ninguna informacin del usuario
dbowner.

Parametrizacin Inicial

Se deben ejecutar los scripts de la parametrizacin inicial de la aplicacin, esto
incluye:

Parametrizacin inicial de la calendarizacin.
Preinstalacin de los reposte ya creados.
Control de acceso a los usuarios.
Parametrizacin general de Iceberg Reports Server

Despliegue e Instalacin de Fuentes

Una vez se han cumplido los requisitos necesarios, la instalacin se hace en
dos pasos:
Hacer el despliegue en el servidor seleccionado que va a contener
Iceberg Reports Server, siguiendo los pasos y configuraciones segn
especificaciones propias de cada servidor de aplicaciones.

Copiar en la carpeta de fuentes de reportes seleccionada los archivos
necesarios para generar los reportes estos incluyen:

Todos los archivos *. Jasper
Copiar la carpeta de imgenes que trae consigo el logo de
Caseware y el Logo de la entidad Correspondiente.

Procesos

Iceberg Reports Server no ejecuta procesos de Insercin, Actualizacin y
Borrado en el esquema de iceberg, excepto en las tablas propias de IRS,
tampoco ejecuta procesos Batch de ninguna forma, ya que el fin de este
software es el de ejecutar consultas para generar reportes en lnea.


DOCUMENTACIN

Cdigo :

T01F04
Versin: 1 Pgina 7 de 39


SGC ISO 9001- CaseWare Ingeniera S.A.


Ejecucin de Iceberg Reports Server.

Una vez Instalado Iceberg Report Server, es necesario inicializar un navegador
e ir a la barra de direcciones y digitar la URL correspondiente a la aplicacin
por ejemplo:

http://<IP>:puerto/icebergrs









DOCUMENTACIN

Cdigo :

T01F04
Versin: 1 Pgina 8 de 39


SGC ISO 9001- CaseWare Ingeniera S.A.






2.1 Cmo obtener iReports?

iReports se pude descargar gratuitamente de la pgina en internet
http://jasperforge.org/sf/projects/ireport haciendo clic en la opcin Download
del men. Puede ser descargado como archivo ZIP para luego ser extrado y
ejecutar el instalador.















Imagen 2. Pgina para descargar iReports
Producto de la instalacin es genera una carpeta llamada iReport-x.y.z, donde
x, y, z representan el mayor, menor y release de la versin de iReports.
Para poner en funcionamiento iReports, debe ejecutar simplemente el archivo
iReport.bat y seguidamente observar una pantalla como la que se muestra a
continuacin.


Captulo2
3
iReports

DOCUMENTACIN

Cdigo :

T01F04
Versin: 1 Pgina 9 de 39


SGC ISO 9001- CaseWare Ingeniera S.A.




Imagen 3. Pantalla principal de iReports

1. Configurando Recursos en el Classpath de iReports

iReports puede ayudarnos a generar reportes rpidamente, para esto necesita
conectarse a la base de datos a travs de un driver JBDC y con la informacin
de la conexin.

iReports puede conectarse a cualquier base de datos, lo importante es
configurar los JDBC necesarios en el Classpath. Para este ejemplo utilizaremos
una base de datos Oracle.
Para configurar el driver JDBC en el Classpath es necesario que d clic en
Options | Classpath.



Imagen 4. Ruta para configurar los JDBC


DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 10 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.


Luego de esto, ver una ventana como la siguiente:



Imagen 5. Ventana de configuracin de drivers en el Classpath

Para adicionar el driver JDBC, es necesario que d clic en el botn Add JAR,
luego aparecer una ventana que le permitir navegar por el equipo en busca
de la locacin del .jar del driver JDBC que se desea utilizar y termine la
bsqueda dando clic en el botn Open.
Luego de esto la ventana de configuracin del Classpath le mostrar el .jar que
acabo de adicionar, para terminar d clic en el botn Save Classpath y su
configuracin quedar guardada.



Imagen 6. Mostrando el driver que se adiciono al Classpath

Para terminar, en caso de necesitar recursos externos en la generacin de los
reportes es necesario seguir el mismo procedimiento para configurarlos.


DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 11 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.


2. Creando un DataSource

Una vez adicionado nuestro driver JDBC en el Classpath de iReports, es
necesario crear una conexin a la base de datos. Para esto es necesario dar
clic en la opcin Data | Connections / Datasources.


Imagen 7. Opcin para crear un Datasource

Luego aparecer una ventana como la siguiente:



Imagen 8. Ventana para creacin de Datasource

Para crear un Datasource es necesario que d clic en el botn New, seleccione
el driver JDBC apropiado, ingrese la informacin de la conexin y d clic en el
botn Save. En la siguiente pantalla se muestra la informacin necesaria para
esto.

DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 12 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.




Imagen 9. Ventana de Propiedades para la Conexin

Antes de guardar la conexin a la base de datos, se recomienda dar clic en el
botn Test para estar seguros de poder establecer conexin con la base de
datos.



Imagen 10. Ventana de mensaje satisfactorio de prueba de conexin

3. Creando un Reporte con el Wizard de iReports

iReports posee un wizard que permite generar reportes de manera fcil y
rpida. El wizard permite el uso de templates predefinidos para la presentacin
de los reportes.

Para empezar a generar el reporte es necesario seleccionar la opcin Report

Wizard del men File.


DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 13 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.




Imagen 11. Opcin para seleccionar el Wizard de iReports

Ahora ingrese la consulta que permite traer los datos en el campo Query
String y de clic al botn Next.


Imagen 12. Paso 1 Colocando la consulta.

La siguiente ventana muestra la lista de todas las columnas seleccionadas en
la consulta, ahora podemos seleccionar las que queremos usar en el reporte.


DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 14 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.



Imagen 12. Paso 2 Seleccionar las columnas que se mostrarn en el reporte

Para nuestro caso, las columnas seleccionadas en la consulta son la que se
mostrarn en el reporte, para esto seleccione todas las columnas y de clic en el
botn con la etiqueta >> y para terminar de clic en el botn Next.

Cuando seleccionamos una columna en Group 1, estamos haciendo una
agrupacin de datos, es decir, estamos dicindole al reporte que debe tener en
cuenta el valor de la columna seleccionada y agrupar los registros por ese
valor, se puede decir que hace lo mismo que la clusula GROUP BY en un
SELECT. Para nuestro caso no vamos a hacer un agrupamiento por el
momento.


Imagen 13. Paso 3 Definiendo el agrupamiento del reporte

Ya terminada esta parte, vamos a darle una cara al reporte, para esto es
necesario seleccionar un template de los predefinidos de iReports. Al
seleccionar cada template se muestra un previsualizador del estilo con el cual
quedar el reporte.


DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 15 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.


Para seleccionar le template es necesario determinar si es columnar o tabular y
escoger el template deseado. Para nuestro caso usaremos el template tabular
classicT.xml.


Imagen 14. Paso 4 Definiendo el template del reporte

Despus de seleccionar el template y dar clic en el botn Next, aparece una
ventana como la siguiente.


Imagen 14. Paso 4 Definiendo el template del reporte


Cuando de clic en el botn Finish se crear un archivo JRXML y es necesario
salvarlo.


DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 16 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.



Imagen 15. Primera vista del archivo JRXML del reporte.


Ahora puede compilar y ejecutar el reporte en un paso, de clic en la opcin
Build | Execute report (using active conn)


Imagen 16. Men para compilar y ejecutar reportes.


Ahora puede ver el reporte generado.


Imagen 17. Visualizacin del reporte generado con iReports


DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 17 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.


Obviamente el ttulo del reporte y el nombre de las columnas debe ser
modificado para que refleje la informacin que se presenta en el reporte, para
modificar el ttulo es necesario que de doble clic sobre el ttulo del reporte y
ingresar el nuevo ttulo o puede dar clic derecho sobre el ttulo y seleccionar
Properties.

En la ventana de properties adems de poder modificar el ttulo del reporte,
puede modificar otras caractersticas como bordes, tipo de letra, entre otras.



Imagen 18. Ventana de propiedades del ttulo.

Para modificar los nombres de las columnas del reporte se debe seguir el
mismo procedimiento en cada una de ellas. El resultado ser:


Imagen 19. Visualizacin del reporte modificado.

4. Creando un reporte Desde Cero

En la anterior seccin se cre un reporte a partir del wizard de iReports, este
wizard es til cuando se quieren generar reportes de manera fcil y rpida, sin
embargo, esto es una desventaja porque no es muy flexible. En esta seccin se
ver cmo crear un reporte desde cero con iReports.


DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 18 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.


Para crear un reporte nuevo, clic en la opcin File | New Document


Imagen 20. Opcin para crear un nuevo reporte.

Aparece una ventana como la siguiente.


Imagen 20. Ventana de propiedades para el nuevo reporte.

Como se puede observar se puede configurar el tamao de la hoja, mrgenes,
orientacin, permite tener el ttulo y el resumen del reporte en una pgina
aparte o con el cuerpo de reporte, i18n, entre otros. Para este caso ingrese el
nombre del reporte, el tamao de la hoja y los dems valores dejarlos por
defecto.

Luego de dar clic en el botn OK aparece el reporte como una hoja en blanco y
con unas divisiones que explicaremos a continuacin.

Las lneas horizontales dividen las diferentes secciones del reporte. Cualquier
tem debe ser insertado entre dos lneas horizontales y en la apropiada seccin
o banda del reporte. Las lneas horizontales pueden ser arrastradas para
modificar el tamao de las secciones.

Las lneas verticales representan las mrgenes del reporte y no pueden ser
arrastradas para modificar su tamao. Para modificar las mrgenes es
necesario dar clic en Edit | Report Properties y modificar el tamao.


DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 19 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.



Imagen 21. Hoja en blanco para crear el reporte.

Para agregar el ttulo al reporte debe insertar un texto, para esto debe dar clic
en el icono de static text . iReports por defecto coloca la palabra Static text,
para modificar el texto se debe dar clic derecho sobre el rea del texto y
seleccionar Properties y modificar el texto en la pestaa Static Text.


Imagen 21. Hoja en blanco para crear el reporte.

El ttulo se ver ahora as:


Imagen 21. Ttulo del reporte modificado.

Tenga en cuenta que iReports tiene unas convenciones especiales para
determinar si el Static Text se encuentra posicionado correctamente.


DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 20 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.


Cuando un Static Text se encuentra bien posicionado, al seleccionarlo se
muestra de color azul, en caso de estar sobrepuesto es de color verde y
cuando se encuentra fuera de los lmites de las secciones o bandas es de color
rojo indicando el error. Este ltimo caso genera un error en el reporte y no
permite su ejecucin.


Imagen 22. Ejemplos de ubicacin de Static Text.

Para incrementar el tamao, ponerle negrilla, centrarlo entre otras, puede
utilizar la barra de Formato de Texto.


Imagen 23. Barra de Formato de Texto.

Y el ttulo quedar as:

DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 21 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.



Imagen 24. Texto del ttulo despus de enriquecerlo.

Usando la misma tcnica del ttulo del reporte, crear todas las columnas que se
mostrarn en el reporte y que provienen de la consulta, estos textos se deben
adicionar en la seccin de header de nuestro reporte.


Imagen 25. Ttulo y nombre de las columnas del reporte.

Hasta el momento nuestro reporte es totalmente esttico, pero ahora vamos a
adicionar el texto de la consulta, para esto es necesario dar clic en Edit |
Report Query o puede dar clic en el icono y aparecer la siguiente ventana:


Imagen 26. Registro de la consulta del reporte.

Ahora que tenemos la consulta y los Fields o columnas de la sentencia
SELECT del reporte, se deben crear los text field del reporte, para esto es

DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 22 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.


necesario dar clic sobre el icono . iReports por defecto coloca el siguiente
texto $F{Field}


Imagen 27. Colocando un text field al reporte.

Para editarlo d clic derecho sobre el rea del text field y seleccione
Properties, aparecer una ventana como la que se muestra a continuacin.

DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 23 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.



Imagen 28. Ventana de propiedades de un text field.

Para unir los text field con los campos de que genera la consulta es necesario
reemplazar el texto Field por el nombre de la columna sin el alias. iReports
para determinar que la expresin es vlida la pone de color verde.


Imagen 29. Ejemplo de una expresin de text field.

Luego de realizar el mismo procedimiento para todos los text field del reporte
quedar de la siguiente forma:


DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 24 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.



Imagen 30. Resultado de la elaboracin del reporte desde cero.


Terminada la construccin del reporte es necesario ejecutarlo para ver
resultado que debe ser como se muestra a continuacin:


Imagen 31. Resultado de la elaboracin del reporte desde cero.


5. Creando Reportes ms elaborados.

En la seccin anterior se cre un reporte simple, ahora se va a modificar,
adicionar imgenes, grficas y mltiples columnas. Adems se ver como
agrupar datos.


DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 25 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.


Adicionando Imgenes

Adicionar una imagen esttica a un reporte e muy sencillo con iReports. Se
necesita dar clic en el icono de imgenes y determinar el rea dnde desea
ubicar la imagen. Para nuestro caso colocaremos el logo de la empresa.


Imagen 32. Determinando el rea de la imagen.

Como se puede ver, iReports coloca una imagen dentro del rea que
selecciono. De doble clic y saldr la ventana de propiedades de la imagen.

En la pestaa Image aparece un campo que se llama Image Expression, para
poder ingresar la imagen tiene dos opciones:

1. Ingresar desde teclado la ruta de la imagen que desea seleccionar.

6. D clic en el botn Find y navegar hasta donde se encuentre la imagen
y seleccionarla dando clic en el botn Open.
7.

Imagen 33. Ventana de Propiedades de la imagen.

Luego de seleccionar la imagen y de cerrar la ventana de propiedades se ver
de la siguiente manera:

DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 26 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.



Imagen 34. Vista del reporte despus de agregar la imagen

8. Agrupando los datos del Reporte.

Como se puede observar hasta ahora nuestro reporte muestra los datos de los
empleados registrados y adicionalmente muestra el departamento en el cual se
encuentran laborando.

Al verificar los datos se nota que los empleados con nmero 7369, 7566, 7788,
7876 y 7902 pertenecen al mismo departamento. Esta es una oportunidad para
agrupar los empleados segn el departamento donde laboran.


Imagen 35. Reporte de empleados.


Para poder crear el agrupamiento de datos, es necesario dar clic en opcin
View | Report Groups.


DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 27 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.



Imagen 36. Opcin para consultar o crear Report Groups


Luego de dar clic en esta opcin aparecer una ventana como la que se
muestra a continuacin.


Imagen 37. Ventana de Grupos del Reporte.


Para crear un grupo es necesario que de clic en el botn New, luego de esto se
debe ingresar el Group Name y el Group Expression. Adicionalmente puede
definir el tamao de la banda de la banda o seccin del grupo, si cada grupo
inicia en una pgina nueva (Start on new page), si cada grupo inicia en una
nueva columna (Start on new column), entre otras.


DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 28 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.



Imagen 38. Ventana de Propiedades para crear un Grupo

Para nuestro caso el nombre del grupo ser Grupo_departamento,
seleccionamos la opcin Print header on each page y colocamos en la
expresin $F{DNAME}, esta expresin corresponde al Field o campo que
sale de la consulta, para nuestro DNAME porque corresponde al field que trae
el departamento en el que se encuentra laborando el empleado y que es
nuestra gua para agrupar.

Como se puede ver las secciones del reporte cambiaron, ahora existen dos
secciones o bandas nuevas Grupo_DepartamentoHeader y
Grupo_DepartamentoFooter, estas bandas corresponden al grupo creado.

Para efectos de presentacin del reporte, colocamos el texto Departamento al
inicio de la banda Grupo_DepartamentoHeader y alineado horizontalmente el
texto del Field correspondiente al departamento, adems, colocamos los textos
estticos que corresponden al nombre de las columnas en esta banda, tal
como se muestra a continuacin.


Imagen 39. Vista del reporte con las modificaciones del grupo creado.

Recuerde que la presentacin del reporte depende de la distribucin que le d
a los datos. Luego de acomodar los objetos del reporte, es necesario que lo
ejecute para ver el resultado.

DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 29 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.





Imagen 40. Ejecucin de Reporte con el Grupo.

Como podemos ver, el departamento RESEARCH se encuentra duplicado
porque la agrupacin no se hizo completa, debido a que la consulta no fue
ordenada segn el criterio de agrupamiento. Para solucionar esto es necesario
que de clic en la opcin Edit | Report Query y adicione la sentencia order by
dname a la consulta.

Este cambio no modifica en nada al reporte slo permite el ordenar los datos
por el criterio de agrupamiento que seleccionamos para que la herramienta
pueda agrupar correctamente.

El resultado final es:




DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 30 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.



Imagen 41. Resultado Final del Reporte con agrupamiento.

9. Adicionando Parmetros al Reporte.

Recopilando lo hecho hasta ahora se puede decir que se cre un reporte que
obtiene la informacin de una o varias tablas, pero criterio de bsqueda para
dicha informacin.

Este criterio de bsqueda en iReports se llama Parameter, en un reporte
puede crearse uno o ms parmetros. Siguiendo con nuestro ejemplo, vamos a
crear un criterio de bsqueda para los empleados que como sueldo reciban
ms de $1200.

Para esto se debe primero crear el parmetro psalario haciendo clic en la
opcin View | Parameters.



DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 31 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.



Imagen 42. Opcin para ver y crear los parmetros del Reporte.

Al hacer clic ver una pantalla como la que se muestra a continuacin y que
contiene, inicialmente, los parmetros bsicos para que todo reporte funcione.
Para crear nuestro parmetro es necesario dar clic en el botn New.


Imagen 43. Ventana de parmetros del reporte.

Al crear el parmetro es necesario tener en cuenta que el nombre debe ser en
minscula y comenzar por una letra y no tener espacios en nombres
compuestos sin _, tal y como se definen las variables en java, es aconsejable
que el class type del parmetro sea java.lang.String para evitar problemas de
cast, esto se explicar ms adelante.

Adems se debe definir si el parmetro va a ser solicitado al usuario o es algo
constante, para esto se debe chequear la casilla Is for Prompting.

En caso de que el parmetro tenga un valor por defecto lo puede adicionar en
el campo Default value expression, pero debe tener en cuenta el class type
con el que lo defini.

La definicin del parmetro quedar as:






DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 32 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.




Imagen 42. Definicin de parmetro psalario.

El siguiente paso es modificar la consulta para poder utilizar el parmetro, para
esto de clic en la opcin Edit | Report Query y adicione lo siguiente:

and e.sal > $P{psalario}

Donde, e.sal es la columna que almacena el salario del empleado y
$P{psalario} es la forma como se utiliza un parmetro dentro de una consulta.

La consulta queda de la siguiente manera,

select e.empno,e.ename,e.job,e.sal,d.dname
from emp e,dept d
where e.deptno = d.deptno
and e.sal > $P{psalario}
order by dname

Al ejecutar el reporte aparece una ventana donde debe colocar el valor del
parmetro y da clic en el botn OK, para nuestro caso el valor es 1200 ya que
queremos averiguar quines tienen un salario superior a esa cantidad.


Imagen 43. Ventana de ingreso del valor del parmetro.

DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 33 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.



El resultado obtenido se muestra a continuacin:


Imagen 43. Resultado del Reporte utilizando parmetros


10. Adicionando Variables al Reporte

Adicional a los Parameters y Fields iReports proporciona variables. Estas
variables permiten realizar clculos como sumas, restas, promedios entre otras,
utilizando una o varias columnas segn la necesidad.

Ahora en el reporte nos piden calcular la suma de los sueldos de todos los
empleados por departamento, hasta ahora tenemos el reporte agrupado por
departamento y lo nico que nos falta es realizar la suma de los sueldos, para
esto es necesario definir una variable.

Las variables se adicionan al dar clic en la opcin View | Variables


DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 34 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.



Imagen 44. Opcin par adicionar o consultar variables

Luego de dar clic en esta opcin aparecer una ventana con las variables
definidas por iReports. Para crear una variable d clic en el botn New.


Imagen 45. Ventana de las variables del reporte

Para nombrar una variable se hace de la misma manera que un parmetro,
debe ser en minscula y no debe contener espacios. Para nuestro caso se
crear la variable suma_salario. El class type es importante debido a que si
se suman datos de un mismo field debe corresponder con el class type del
field, pero cuando se estn realizando operaciones con ms de un field es
necesario hacer un cast, como nuestro caso es el primero y el class type del fiel
es BigDecimal nuestra variable debe ser del mismo tipo.

El Calculation type es el tipo de operacin que se desea realizar, entre las
operaciones permitidas tenemos Count (Conteo), Sum (Suma), Averange
(Promedio), Lowest (Valor ms bajo), Highest (Valor ms alto), entre otros,
pero en este ejemplo es necesario seleccionar Sum.

El Reset type es el punto dnde se determina en qu momento la operacin
debe volver a cero o hacer reset, en nuestro caso como se desea sumar por
departamento, se debe hacer reset cada vez que cambie de departamento, por
esta razn seleccionamos Group y se activa el campo Reset Group dnde se

DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 35 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.


debe especificar en qu grupo se debe hacer el reset, para nuestro caso el
grupo es Grupo_Departamento ya que es el nico grupo creado.

En el campo Variable Expression se debe ingresar la fuente de datos para
realizar la operacin, cmo nuestro objetivo es sumar los salarios por
departamento, nuestra expresin debe ser el fiel que trae los salarios de los
empleados, es decir $F{SAL}.

De esta manera la variable queda definida de la siguiente manera:


Imagen 45. Ventana de creacin de una variable.

Luego de definir la variable es necesario mostrarla en el reporte, esto se puede
hacer de dos formas, creando a partir del Text Field como lo hicimos
anteriormente o se puede seleccionar la variable del rea de Library que se
encuentra en la parte inferior derecha y arrstrala hasta la banda o seccin en
la que se desea colocar.


Imagen 46. Seccin Library para arrastra los elementos al rea del Reporte.

DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 36 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.



Como la suma se hace por grupos, la variable debe dejarse el Footer del grupo
que se cre para que se muestre cada vez que se cambia de grupo. La variable
debe mostrarse as.


Imagen 47. Adicionar la variable al Reporte.

Ahora ejecute el reporte se ver el resultado con la suma por departamento.


Imagen 47. Adicionar la variable al Reporte.


11. Class Type Soportados por iReports.

Estas clases son las soportadas por iReports y otorgadas por java, para definir
el tipo de datos que el parmetro contendr a la hora de generar el reporte.
iReports no soporta el uso de los tipos de datos nativos.


DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 37 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.


Entre ellas se tienen:

java.lang.String: Define un tipo de dato como cadena de caracteres, es el tipo
ms comn de los parmetros usados en jasper reports, ya que acepta
cualquier carcter alfanumrico, espacios y caracteres especiales.

java.lang.Double: Define un tipo de dato Numrico flotante, este tipo de dato
solo recibe nmeros, los cuales pueden tener cifras decimales.

java.lang.Integer: Define un tipo de dato numrico Entero, este tipo de dato
solo recibe nmeros en teros sin decimales este tipo de dato tiene un rango de
-2, 147, 483, 648 hasta 2,147, 483, 648.

java.lang.Long: Define un tipo de dato numrico Entero, este tipo de dato solo
recibe nmeros en teros sin decimales este tipo de dato tiene un rango de -
9,223,372,036,854,775,808 hasta 9,223,372,036,854,775,808.

java.math.BigDecimal: Define un tipo de dato numrico flotante, este tipo
recibe nmeros los cuales pueden tener cifras decimales, y virtualmente puede
contener cifras astronmicas.

java.util.Date: Define un tipo de dato tipo fecha de java este tipo de dato solo
puede contener datos tipo fecha (por ejemplo '01/901/2000') y se basa en el
formato especificado en la pantalla de parmetros de Iceberg Reports Sever,
en el campo destinado para este fin (ver "Opcin General Settings")

java.sql.Date: Define un tipo de dato tipo fecha de SQL este tipo de dato solo
puede contener datos tipo fecha (por ejemplo '01/901/2000').

java.sql.Timestamp: Define un tipo de dato tipo fecha de SQL este tipo de
dato solo puede contener datos tipo fecha (por ejemplo '01/901/2000').

java.lang.Boolean: Define un tipo de dato booleano, este dato solo puede
contener valores true o false.

Adems de tener en cuenta los Class Type es necesario tener en cuenta la
manera de definir los valores por defecto y las operaciones que se realicen con
las variables, para lo cual tenga presente las siguientes recomendaciones.

Como iReports solo acepta los valores cuando utilizan los Class Type
mencionados anteriormente, cuando se define un valor, debe ser definido
de la siguiente forma:

new Date(), para casos de fechas
new java.math.BigDecimal (0.0), para valores numricos

DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 38 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.


new Boolean(false), para valores true o false entre otros
new String(), para cadenas de caracteres.
new Integer(0), para nmeros enteros.

Cuando requiera obtener la fecha actual en algn reporte debe hacerlo de la
siguiente manera: new Date() nos retorna la fecha, pero para efectos de
presentacin es necesario darle un formato y para eso nos valemos de la
clase SimpleDateFormat.

(new java.text.SimpleDateFormat("dd/MM/yyyy hh:mms a")).format(new
Date())

Cuando sea necesario hacer operaciones involucrando ms de un Field o
columna u otras variables del reporte es necesario saber que el valor de la
columna se obtiene dependiendo del Class Type, en este ejemplo se desea
tomar el valor de los activos y restar el valor de los pasivos ms el capital.
La funcin abs() nos permite sacar el valor absoluto, es decir obviando el
signo. La variable totalSumaActivos es BigDecimal pero para obtener el
valor se debe utilizar el doubleValue(),luego de realizar la operacin es
necesario tomar el resultado y definirlo como se explico en el numeral 1

new java.math.BigDecimal(
$V{totalSumaActivos}.abs().doubleValue() -
( $V{totalSumaPasivos}.abs().doubleValue() +
$V{totalSumaCapital}.abs().doubleValue()))

Cuando se desea concatenar texto con variables se puede hacer de la
siguiente manera: En este caso se est colocando la etiqueta SALDOS A
y se est mostrando el valor que poseen dos parmetros.

new String ("SALDOS A " +
$P{mes_fecha_inicial}+"/"+$P{ano_fecha_inicial})

Adems, iReports permite la utilizacin del If <> else, por ejemplo se
requiere que un text field sea dinmico y pueda cambia el label segn una
condicin, en este caso la condicin seria la clase de la cuenta:

$F{CLASE_CUENTA}.equals("1")? new String("ACTIVO"):
$F{CLASE_CUENTA}.equals("2")? new String("PASIVO"):
$F{CLASE_CUENTA}.equals("3")? new String("PATRIMONIO"):""

Otro caso puede ser que un campo tome un valor segn un valor simblico
que pueda tener, algo similar al DECODE en SQL. Para esto podemos
hacer lo siguiente:


DOCUMENTACIN

Cdigo :

T01F04
Versin: 1
Pgina 39 de
39


SGC ISO 9001- CaseWare Ingeniera S.A.


$P{detalle_fondo}.equals("S")?new String (": SI"):new String(": NO")

En caso de necesitar tomar parte de una cadena se puede hacer utilizando
la funcin split que recibe como parmetro el carcter que determina la
separacin, es decir si ingreso el valor 01/02/2006 y se quiere tomar solo
el mes se hace lo siguiente:

$P{fecha_inicial}.split("/")[1]

Teniendo en cuenta que [0]=da, la [1]=mes y [2]=ao