Ver Mensaje Individual
  #11 (permalink)  
Antiguo 26/11/2008, 02:34
Muyerina
 
Fecha de Ingreso: octubre-2006
Mensajes: 18
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: iReport - Subreport

Hola de nuevo Epam

A ver si te he entendido bien... Por lo que leo en tu post estás tratando de mostrar información según el tipo de País al que pertenece ¿verdad?
La primera opción es el GROUP BY en la sentencia Select, pero si no quieres utilizarlo puedes recurrir a los grupos de iReport.

Primero haces la Select que necesitas y si vas a sacar la información por Países sería recomendable que utilizaras un "ORDER BY Pais" para ordenarlas antes de sacarlas.

Una vez hecha la Select e introducida en el iReport pulsas el botón de "grupos de informe" y creas un nuevo grupo. Le pones el nombre que tú quieras (por ejemplo Paises) y le indicas la expresión que quieres que evalúe en el apartado "expresión grupo". Este apartado es muy importante, ya que es el que utilizará el iReport para comprobar qué registros mete agrupados y para cuales crea otro grupo.
Por ejemplo, si quieres que tus paises vayan listados por orden alfabético (primero los que empiecen por A, luego los de la B...) en el campo expresión grupo pondrías algo así como "$F{Pais}.substring(0,1)" si sabes que no va a ser null o "( ($F{CONTACTNAME} != null && $F{CONTACTNAME}.length() > 0) ?
$F{CONTACTNAME}.substring(0,1) : "")" si quieres barajar la posibilidad de que pueda ser null.

Una vez creado el nuevo grupo aparecerá su banda correspondiente, en la que debes añadirle el título que quieres que aparezca en cada agrupación (en este caso sería lógico mostrar la letra del alfabeto en la que estamos) y ... voilá! Ya tienes el informe agrupado.

Quizá lo que te interese es ordenar la información por paises sin más, en cuyo caso le pondrías el nombre completo del país en la expresión del grupo, en vez de su primera letra.

Espero haberte ayudado con mi parrafada