Un informe
agrupado se puede definir como varios listados en un mismo informe. Los
elementos de cada listado tienen una característica en común, o, dicho de otra
forma, pertenecen a un mismo grupo.
Por ejemplo, si
tuviera un listado de trabajadores, podría mostrar dicho listado agrupado según
profesión, y entonces tendríamos el listado de albañiles, el listado de
profesores, el listado de policías, el listado de bomberos, etc.
Es decir, el
listado de trabajadores se dividiría en grupos según las distintas profesiones
de los trabajadores.
En este post se
verá cómo realizar este tipo de listados.
EJERCICIO GUIADO Nº 1. CREACIÓN DE UN INFORME
AGRUPADO:
- Entra en NetBeans.
- Crearemos un informe en el que aparezca el
listado de servicios realizados. Usaremos el asistente de informes para
hacer este listado.
Para ello dar clic derecho en algún paquete del proyecto NetBeans,
escoger la opción New y luego en Other…; en el cuadro de diálogo New File que aparece seleccionar la categoría
Report
y el tipo de archivo Report Wizard (Asistente de Informes), y dar
clic en Siguiente.
Elegir el Layout (Diseño) Leaf Green
(Hoja
Verde) y dar clic en Siguiente.
Colocar al informe el nombre de serviciosAgrupados (no
borrar la extensión .jrxml) y dar
clic en Siguiente.
- La conexión a usar será Conexión DB AMANUVA. Y la consulta SQL será la
siguiente:
SELECT * FROM servicios ORDER BY tipo
(Nota:
observe que hemos ordenado la consulta por tipo.
Luego verá por qué).
Pulse el botón Siguiente.
- Los campos a añadir al listado serán: numero,
fecha,
tipo
y cantidad_cobrada.
Pulse el botón Siguiente.
5.
Ahora ya estamos en el paso donde
tendremos que indicar la forma de agrupar el listado. En el desplegable Group 1 indique el campo tipo.
Esto significa que el listado saldrá agrupado por tipo de servicio:
Pulse
Siguiente y
luego en Terminar.
6.
Aparecerá el diseño del informe
que acaba de crear. Observe que entre las zonas típicas del informe ha
aparecido una nueva zona “de agrupamiento”:
7.
Visualice el informe y observe el
resultado:
Como ve,
aparecen varios sub-listados. Un listado con los servicios de Cableado
estructurado, otro con los servicios de Electricidad, otro con
los servicios de Fontanería, y otro con los servicios de Limpieza. Tenemos un
informe en grupos.
NOTA: Es
obligatorio que la consulta del informe esté ordenada según el campo por el que
vayamos a agrupar. Esta es la razón por la que la consulta se ordenó por tipo.
8.
Ahora se mejorará un poco el
listado que se ha hecho. En primer lugar modifique el patrón del campo fecha,
de forma que aparezca en formato día-mes-año:
9.
También puede resultar
interesante modificar el patrón de la cantidad_cobrada, de
forma que aparezca con dos decimales y con el Separador de millares:
10. Finalmente
asigne el título “Listado de Servicios”
al informe. Este debe tener ahora el siguiente aspecto al visualizarlo:
NOTA:
Es posible
agregar distintos niveles de agrupamiento a un informe. Usando el ejemplo del
inicio de este post, podríamos tener un listado de trabajadores agrupado por
profesiones y por estado civil. En este caso, aparecería un grupo por cada
profesión, y, cada grupo, estaría a su vez subdividido en grupos según el
estado civil.
Por ejemplo, el
grupo de bomberos podría tener el
siguiente aspecto:
Bomberos
Casados
----
----
Solteros
----
----
Etc.
Para hacer esto
basta con indicar varios campos en el paso de agrupamiento del asistente de informes. Pero tenga
en cuenta que tendrá que ordenar la consulta SELECT según dichos campos.
En el ejemplo de
los trabajadores, la consulta podría tener este aspecto:
SELECT * FROM trabajadores ORDER BY profesion, estado_civil
Se anima al lector
que experimente con esta posibilidad.
CONCLUSIONES:
Un informe agrupado es aquel en que los registros
aparecen en distintos grupos.
Los elementos de un grupo tienen la misma
característica.
Se puede decir que un informe agrupado consiste en
una serie de sub-listados.
Para crear los grupos se toma como referencia el
valor de un determinado campo.
La mejor forma de crear un informe agrupado usando
iReport es a través del asistente de informes, ya que este asistente
muestra un paso donde se puede elegir el campo según el que se quiere agrupar.
No olvide que cuando quiera agrupar un listado por
un campo es obligatorio que la consulta SELECT del informe ordene el listado
por el campo por el que se quiere agrupar.
No hay comentarios.:
Publicar un comentario