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

[SOLUCIONADO] problema con Jasperreport etiquetas

Estas en el tema de problema con Jasperreport etiquetas en el foro de Java en Foros del Web. Hola a todos tengo un problema que no se el por que me sale de esta manera y lo explico de la manera mas sencilla ...
  #1 (permalink)  
Antiguo 09/02/2013, 23:57
 
Fecha de Ingreso: agosto-2011
Ubicación: d.f
Mensajes: 283
Antigüedad: 12 años, 7 meses
Puntos: 4
problema con Jasperreport etiquetas

Hola a todos tengo un problema que no se el por que me sale de esta manera y lo explico de la manera mas sencilla de entender.

Estoy realizando el historial de un producto esto es cuando se dio de alta hasta que se dio de baja, para esto hago varios queries 7 en total presento solo dos:


Código PHP:
 Query query session.createQuery("Select tag.fechaIngreso from TerminalesAlmGeneral tag "
                    
"where tag.idMarca = '"+marcaSeleccionada+"' and tag.modelo = '"+modeloSeleccionada+"' "
                    
"and tag.idTecnologia='"+tecnologiaSeleccionada+"' and tag.numeroSerie='"+numeroSerie+"' "
                    
"and tag.ptid = '"+ptid+"' ");
            
            
System.out.println("El tamaño de la lista es "+query.list().size());
            
            if(!
query.list().isEmpty()){
                
                
//String fechaIngreso = "La fecha que se dio de alta en el sistema fue "+query.list().get(0).toString() +" ";
                
                
listaUno query.list();
                
               for(
int i=0i<listaUno.size(); i++){
                 
                
HistorialTerminalBean htb = new HistorialTerminalBean();
               
// mapota.put("fechaIngreso", query.list().get(i).toString());
                
htb.setFechaIngreso(query.list().get(i).toString());
                
listaDos.add(htb);
                                
               } 


Código PHP:
 Query query2 session.createQuery("select alm.nombre,ata.fechaAsignacion from "
                        
"AsignacionTerminalesAlmacenescsv atacsv, Almacenes alm, AsignacionTerminalesAlmacenes ata "
                        
"where atacsv.idAsignacionTerminalesAlmacenes = ata.idAsignacionTerminalesAlmacenes and "
                        
"alm.idAlmacen = ata.idParaAlmacen and "
                        
"atacsv.numeroSerie = '"+numeroSerie+"' and atacsv.ptid = '"+ptid+"' and "
                        
"ata.marca = '"+marcaSeleccionadaTexto+"' and "
                        
"ata.modelo = '"+modeloSeleccionada+"' and "
                        
"ata.tecnologia = '"+tecnologiaSeleccionadaTexto+"'");
                
                
System.out.println("el tamaño de la lista "+query2.list().size());
                
                
                if(!
query2.list().isEmpty()){
                    
listaTres query2.list();
                    
Iterator ite listaTres.iterator();
                    
                    while(
ite.hasNext()){
                    
Object[] row = (Object[]) ite.next();
                    
//mapota.put("almacenDestino", row[0].toString());
                    //mapota.put("fechaAsignacion", row[1].toString());
                    
HistorialTerminalBean htb = new HistorialTerminalBean();
                    
htb.setEstadoAsignacion(row[0].toString());
                    
htb.setFechaAsignacion(row[1].toString());
                    
listaDos.add(htb);
                    
                                                          } 

Como podrán darse cuenta estoy utilizando un Objeto tipo bean para hacer set las propiedades de los cuales estoy buscando y al ultimo lo agrego a una lista de tipo arraylist.

Por otro lado tengo mi archivo .jrxml (Jasper ) donde tengo mis etiquetas de los nombres de mis tablas por ejemplo

Código PHP:
ingresoasignaciónfecha de salida 
y abajo tengo el nombre de mis variables que uso en el bean para que aparezca mi información y si lo hace muy bien pero mi problema que tengo es que me imprime las etiquetas por cada objeto bean que me agregó a la lista de tipo arraylist osea mi problema CENTRAL ES COMO LE HAGO EN JASPER PARA IMPRIMIR SOLAMENTE UNA VEZ LAS ETIQUETAS Y NO ME IMPRIMA POR CADA objeto bean que agregue las etiquetas.

Espero haberme dado a explicar y desde una vez muchas gracias por sus comentarios que siempre me han ayudado!!!
  #2 (permalink)  
Antiguo 10/02/2013, 12:17
Avatar de hschimpf  
Fecha de Ingreso: junio-2009
Ubicación: in the World Wide Web
Mensajes: 140
Antigüedad: 14 años, 10 meses
Puntos: 17
Respuesta: problema con Jasperreport etiquetas

En el fichero jasper tienes secciones que dividen el documento (title, pageHeader, columnHeader, detail, columnFooter..). Las etiquetas las tienes que poner en una seccion que no se repita por cada linea/objeto bean que le envias al jasper. Por ej, columnHeader. Si pones tus etiquetas en la seccion detail, estas se repetiran con cada linea/objeto bean.

Suerte!
__________________
Hermann D. Schimpf
Visita mis repositorios de:
Clases Java: http://code.google.com/p/javaclassesrepository/
Clases PHP: http://code.google.com/p/phpclassesrepository/
  #3 (permalink)  
Antiguo 10/02/2013, 17:37
 
Fecha de Ingreso: agosto-2011
Ubicación: d.f
Mensajes: 283
Antigüedad: 12 años, 7 meses
Puntos: 4
Respuesta: problema con Jasperreport etiquetas

Gracias por tu respuesta hschimpf y asi lo implemente como me escribiste in embargo no me imprime TODOS mis valores del bean si no solo el primero y es lo que quiero que me imprima todos mis valores de mi objeto bean!!!
  #4 (permalink)  
Antiguo 11/02/2013, 11:05
 
Fecha de Ingreso: agosto-2011
Ubicación: d.f
Mensajes: 283
Antigüedad: 12 años, 7 meses
Puntos: 4
Respuesta: problema con Jasperreport etiquetas

Hola a todos ya entendí donde estaba el error después de leer y leer la etiqueta DETAIL 1 hay que agregar los campos de nuestro bean para que aparezca toda la lista!!

posteo un link muy bueno para crear reportes por si le sirve a alguien:

Código PHP:
http://www.javatutoriales.com/2009/03/creacion-de-reportes-con-jasperrepots-y.html 
Saludos

Etiquetas: etiquetas, jasperreport, string
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




La zona horaria es GMT -6. Ahora son las 10:47.