reportes en el framework

6
Reportes en el Framework REPORTES EN EL FRAMEWORK Requisitos Crear un reporte en iReport 5.0.4 A continuación se detalla el proceso para visualizar un reporte creado en iReport 5.0.4 utilizando los componentes del framework. Es necesario ubicar el reporte dentro del directorio WebContent\reportes del proyecto, para el caso de ejemplo voy a ocupar el reporte rep_perfil.jasper que se encuentra en el directorio WebContent\reportes\rep_seguridad Creamos una pantalla en el sistema y en la pestaña de REPORTES asociamos a la pantalla el reporte que queremos que se visualice. Lo que hemos hecho es crear una nueva pantalla y asignarle un reporte, se puede asignar varios reportes a una pantalla.

Upload: jhoan-torres

Post on 17-Feb-2016

229 views

Category:

Documents


1 download

DESCRIPTION

reportes de framework glassfish sdk manuales de programacion

TRANSCRIPT

Page 1: Reportes en El Framework

Reportes en el Framework

REPORTES EN EL FRAMEWORK Requisitos

Crear un reporte en iReport 5.0.4

A continuación se detalla el proceso para visualizar un reporte creado en iReport 5.0.4 utilizando

los componentes del framework.

Es necesario ubicar el reporte dentro del directorio WebContent\reportes del proyecto,

para el caso de ejemplo voy a ocupar el reporte rep_perfil.jasper que se encuentra en el

directorio WebContent\reportes\rep_seguridad

Creamos una pantalla en el sistema y en la pestaña de REPORTES asociamos a la pantalla

el reporte que queremos que se visualice.

Lo que hemos hecho es crear una nueva pantalla y asignarle un reporte, se puede asignar varios reportes a una pantalla.

Page 2: Reportes en El Framework

Reportes en el Framework

En el campo NOM_REPO se define el nombre que del reporte, es importante definir bien el nombre ya que este se utilizará para al momento de programar la pantalla, y no se podrá cambiarlo después. En el campo PATH_REPO se define la ruta donde se encuentra el reporte sin tomar en cuenta la carpeta “reportes” ya que por defecto el framework busca en este directorio.

Damos permiso a un perfil a la pantalla y al reporte.

Creamos la clase pre_componentes.java en el paquete paq_demo ya que asi lo

definimos.

Definimos 2 objetos fundamentales para visualizar el reporte

Estos componentes son tipo Dialogo por lo tanto necesitan los métodos get y set

Page 3: Reportes en El Framework

Reportes en el Framework

Definimos un objeto de tipo Map para cargar los parámetros que recibe el reporte

Configuramos los 2 componentes en el método constructor de la clase

Implementamos el método abrirListaReportes() el cual se ejecuta al dar click en el botón reportes

Implementamos el método aceptarReporte() el cual se ejecuta cuando el usuario selecciona un reporte y da click en el botón aceptar

Hasta el momento el código quedaría de la siguiente manera package paq_demo; import java.util.HashMap; import java.util.Map; import framework.componentes.Reporte; import framework.componentes.SeleccionFormatoReporte; import paq_sistema.aplicacion.Pantalla; public class pre_componentes extends Pantalla{ private Reporte rep_reporte = new Reporte(); //Listado de Reportes, siempre se llama rep_reporte private SeleccionFormatoReporte sel_rep = new SeleccionFormatoReporte(); //formato de salida del reporte private Map map_parametros = new HashMap();//Parametros del reporte public pre_componentes() { rep_reporte.setId("rep_reporte"); //id rep_reporte.getBot_aceptar().setMetodo("aceptarReporte");//ejecuta el metodo al aceptar reporte agregarComponente(rep_reporte);//agrega el componente a la pantalla bar_botones.agregarReporte();//aparece el boton de reportes en la barra de botones sel_rep.setId("sel_rep"); //id agregarComponente(sel_rep); //agrego el componente a la pantalla } @Override public void abrirListaReportes() { // TODO Auto-generated method stub rep_reporte.dibujar(); } @Override public void aceptarReporte(){ } @Override

Page 4: Reportes en El Framework

Reportes en el Framework

public void insertar() { // TODO Auto-generated method stub } @Override public void guardar() { // TODO Auto-generated method stub } @Override public void eliminar() { // TODO Auto-generated method stub } public Reporte getRep_reporte() { return rep_reporte; } public void setRep_reporte(Reporte rep_reporte) { this.rep_reporte = rep_reporte; } public SeleccionFormatoReporte getSel_rep() { return sel_rep; } public void setSel_rep(SeleccionFormatoReporte sel_rep) { this.sel_rep = sel_rep; } }

Compilamos, ejecutamos el proyecto y verificamos el funcionamiento de la pantalla

Simplemente lo que hemos hecho es desplegar los reportes a los que tiene acceso el usuario en la Pantalla.

Ahora vamos a programar los métodos , para poder desplegar el reporte seleccionado en el navegador

En el método aceptarReporte() vamos a validar que le usuario selecciono el reporte “Perfiles del Sistema(Ejemplo)” , y creamos el método abrirPerfilesSistema() que el que se ejecutará para visualizar el reporte.

Page 5: Reportes en El Framework

Reportes en el Framework

Programamos el método abrirPerfilesSistema() para que despliegue el reporte

Hasta el momento el código quedaría de la siguiente manera

package paq_demo; import java.util.HashMap; import java.util.Map; import framework.componentes.Reporte; import framework.componentes.SeleccionFormatoReporte; import paq_sistema.aplicacion.Pantalla; public class pre_componentes extends Pantalla{ private Reporte rep_reporte = new Reporte(); //Listado de Reportes, siempre se llama rep_reporte private SeleccionFormatoReporte sel_rep = new SeleccionFormatoReporte(); //formato de salida del reporte private Map map_parametros = new HashMap(); //Parametros del reporte public pre_componentes() { rep_reporte.setId("rep_reporte"); //id rep_reporte.getBot_aceptar().setMetodo("aceptarReporte");//ejecuta el metodo al aceptar reporte agregarComponente(rep_reporte);//agrega el componente a la pantalla bar_botones.agregarReporte();//aparece el boton de reportes en la barra de botones sel_rep.setId("sel_rep"); //id agregarComponente(sel_rep); //agrego el componente a la pantalla } @Override public void abrirListaReportes() { // TODO Auto-generated method stub rep_reporte.dibujar(); } @Override public void aceptarReporte(){ //Pregunta que reporte selecciono el usuario if (rep_reporte.getReporteSelecionado().equals("Perfiles del Sistema(Ejemplo)")) { abrirPerfilesSistema(); } } private void abrirPerfilesSistema() { //Despliega el reporte de Perfiles del Sistema(Ejemplo) rep_reporte.cerrar(); //cierra la Lista de Reportes map_parametros.clear();//limpiamos los parametros //Agregamos el parametro titulo, el cual se visualizará en el reporte map_parametros.put("titulo", "EJEMPLO REPORTE PERFILES DE USUARIO"); //una ves creado todos los parametros del reporte procedemos a configurar //el objeto SeleccionFormatoReporte para que despliege el reporte en pantalla sel_rep.setSeleccionFormatoReporte(map_parametros, rep_reporte.getPath()); sel_rep.dibujar(); //dibuja el objeto SeleccionFormatoReporte }

Page 6: Reportes en El Framework

Reportes en el Framework

@Override public void insertar() { // TODO Auto-generated method stub } @Override public void guardar() { // TODO Auto-generated method stub } @Override public void eliminar() { // TODO Auto-generated method stub } public Reporte getRep_reporte() { return rep_reporte; } public void setRep_reporte(Reporte rep_reporte) { this.rep_reporte = rep_reporte; } public SeleccionFormatoReporte getSel_rep() { return sel_rep; } public void setSel_rep(SeleccionFormatoReporte sel_rep) { this.sel_rep = sel_rep; } }

Compilamos, ejecutamos el proyecto y verificamos el funcionamiento de la pantalla

NOTA. La complejidad de la configuración de un reporte en el framework depende del reporte, este es un pequeño ejemplo que les enseña la lógica que se debe tener al momento de configurar un reporte.