Foros del Web » Programación para mayores de 30 ;) » Java »

Llamar un ireport desde un JDialog Hijo

Estas en el tema de Llamar un ireport desde un JDialog Hijo en el foro de Java en Foros del Web. Estimados Todos buenos Dias Recurro a ustedes nuevamente , tengo un pequeño software que esta compuesto de un Jframe un Jdialog (hijo del jframe) y ...
  #1 (permalink)  
Antiguo 10/10/2011, 13:27
 
Fecha de Ingreso: octubre-2011
Ubicación: Peru
Mensajes: 18
Antigüedad: 12 años, 6 meses
Puntos: 2
Llamar un ireport desde un JDialog Hijo

Estimados Todos buenos Dias

Recurro a ustedes nuevamente , tengo un pequeño software que esta compuesto de un Jframe un Jdialog (hijo del jframe) y un Reporte hecho en Ireport
Todo esta bien pero cuando llamo al Reporte desde JDialog Hijo , lo llama al Reporte Existosamente pero se ubica detras del Jdialog Y no puedo acceder al Reporte Hasta que no cierre el JDialog Hijo.

El reporte lo configuro y ruteo en una clase aparte que instancio y llamo en el JDialog

Pregunta Hay alguna forma que llamar este reporte pero que NO se ubique detras del Jdialog si no delante del jdialog


Mucho apreciare su acostumbrado apoyo ( PabloR21 si me ayudas)

Última edición por juliocock; 10/10/2011 a las 15:35
  #2 (permalink)  
Antiguo 10/10/2011, 19:49
Avatar de HackmanC  
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 3 meses
Puntos: 260
Sonrisa Respuesta: Llamar un ireport desde un JDialog Hijo

Hola,

Cita:
Iniciado por juliocock Ver Mensaje
... Pregunta Hay alguna forma que llamar este reporte pero que NO se ubique detras del Jdialog si no delante del jdialog ...
Dependiendo del constructor los JDialog pueden ser modales, es decir, se colocan hasta adelante de todas las demás ventanas hasta que se cierran. Prueba a usar el constructor del JDialog con el valor 'false' en el parámetro 'modal'.

Código Java:
Ver original
  1. JDialog(Dialog owner, String title, boolean modal)

Saludos,
  #3 (permalink)  
Antiguo 11/10/2011, 09:58
 
Fecha de Ingreso: octubre-2011
Ubicación: Peru
Mensajes: 18
Antigüedad: 12 años, 6 meses
Puntos: 2
Respuesta: Llamar un ireport desde un JDialog Hijo

Gracias Por Responder , Pero no creo que sea la solucion mas bien he obtenido una ayuda y es que el reporte lo muestre en jdialog hijo , pero lo que no se es como llamar este reporte para que se muestre en un JDialog
  #4 (permalink)  
Antiguo 11/10/2011, 13:38
Avatar de HackmanC  
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 3 meses
Puntos: 260
Sonrisa Respuesta: Llamar un ireport desde un JDialog Hijo

Hola,

Cita:
Iniciado por juliocock Ver Mensaje
... Todo esta bien pero cuando llamo al Reporte desde JDialog Hijo , lo llama al Reporte Existosamente pero se ubica detras del Jdialog Y no puedo acceder al Reporte Hasta que no cierre el JDialog Hijo. ...
Eso se llaman ventanas modales, en cualquier lenguaje y sistema operativo. Cuando una ventana se coloca adelante de las otras y las otras no responden hasta que se cierra la que está al frente, se le denomina una ventana modal.

Cita:
Iniciado por juliocock Ver Mensaje
... Pero no creo que sea la solucion mas bien he obtenido una ayuda y es que el reporte lo muestre en jdialog hijo , pero lo que no se es como llamar este reporte para que se muestre en un JDialog
Realmente no entendí la pregunta inicial, me basé en el comportamiento de una ventana modal, porque lo que describiste es una ventana modal. Aunque sigo sin entender completamente que es lo que quieres hacer.

Yo muestro de esta forma mis reportes en Jasper y no tengo ningún inconveniente con las ventanas modales, posiblemente y digo posiblemente porque no tengo ni idea que estas haciendo, te sea de alguna ayuda,

Código Java:
Ver original
  1. public class JDialogReport01 extends javax.swing.JDialog {
  2.    
  3.     public JDialogReport01(java.awt.Frame parent, boolean modal) {
  4.         super(parent, modal);
  5.         initComponents();
  6.         setLocationRelativeTo(parent);
  7.         DateFormat df = DateFormat.getDateInstance(DateFormat.MEDIUM);
  8.         jTextField1.setText(df.format(new Date()));
  9.         jTextField2.setText(df.format(new Date()));
  10.     }
  11.  
  12.     private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
  13.         try {
  14.             Reportes reportes = new Reportes();
  15.             DateFormat df = DateFormat.getDateInstance();
  16.             JasperViewer.viewReport(reportes.Reporte03(
  17.                     df.parse(jTextField1.getText()),
  18.                     df.parse(jTextField2.getText())),
  19.                     false);
  20.         } catch (Exception ex) {
  21.             JOptionPane.showMessageDialog(this,
  22.                     "Ha ocurrido un error al intentar imprimir el documento.\n" +
  23.                     ex, getTitle(), JOptionPane.ERROR_MESSAGE);
  24.         }
  25.     }

Y esta es mi clase Reporte03:

Código Java:
Ver original
  1. public JasperPrint Reporte03(java.util.Date p_fecini, java.util.Date p_fecfin) throws DataConnectionException, SQLException, JRException {
  2.         HashMap<String, java.util.Date> m = new HashMap<String, java.util.Date>();
  3.         m.put("p_fecini", p_fecini);
  4.         m.put("p_fecfin", p_fecfin);
  5.         JasperReport jasperReport = JasperCompileManager.compileReport(Main.getProperty("reportes_filepath") + "/jaspReport03.jrxml");
  6.         JasperPrint jasperPrinter = JasperFillManager.fillReport(jasperReport, m, new DataConnection().getConnection());
  7.         return jasperPrinter;
  8.     }

Y la forma de llamar el JDialog:

Código Java:
Ver original
  1. if (Main.usuario.hasAccess(13)) {
  2.             new JDialogReport01(this, false).setVisible(true);
  3.         } else {
  4.             JOptionPane.showMessageDialog(this,
  5.                     "No tiene los permisos para ingresar a esta opción.\n",
  6.                     getTitle(), JOptionPane.ERROR_MESSAGE);
  7.         }

Sino posiblemente alguien mas sea de mayor ayuda,
Saludos,
  #5 (permalink)  
Antiguo 12/10/2011, 07:14
 
Fecha de Ingreso: octubre-2011
Ubicación: Peru
Mensajes: 18
Antigüedad: 12 años, 6 meses
Puntos: 2
Respuesta: Llamar un ireport desde un JDialog Hijo

Excelente respuesta y esto era en verdad lo que necesitaba

Mil Gracias , Esta Es la solucion
  #6 (permalink)  
Antiguo 24/12/2012, 12:56
 
Fecha de Ingreso: noviembre-2012
Ubicación: San Lorenzo
Mensajes: 27
Antigüedad: 11 años, 5 meses
Puntos: 0
Respuesta: Llamar un ireport desde un JDialog Hijo

Tenia el mismo problema y me sirvio esto, lo que que ayudo en verdad fue la forma de llamar al JDialog, solo eso ya me soluciono el problema :P

Etiquetas: ireport, jdialog
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 06:51.