tutoriales de programacion java_ creación de reportes con jasperrepots y ireports - parte 6_ grupos
DESCRIPTION
tipTRANSCRIPT
-
14/4/2015 TutorialesdeProgramacionJava:CreacindeReportesconJasperRepotsyiReportsParte6:Grupos
http://www.javatutoriales.com/2009/04/creaciondereportesconjasperrepotsy_17.html 1/10
BlogdedicadoatemasdeprogramacinactualesusandoellenguajedeprogramacinJavaylasltimasversionesdesusAPIsyHerramientas.
TutorialesdeProgramacionJava
Pginaprincipal PginadeConcursos TutorialesUPAO2010 PresentacionesCapacitacin
VIERNES,17DEABRILDE2009
CreacindeReportesconJasperRepotsyiReportsParte6:GruposVisitalaparte1deestetutorial:ReportesconConexinaBasesdeDatosVisitalaparte2deestetutorial:UsandoDataSourcesPersonalizadosVisitalaparte3deestetutorial:ParmetrosyVariablesVisitalaparte4deestetutorial:ReportesenaplicacioneswebVisitalaparte5deestetutorial:GrficasenReportesVisitalaparte7deestetutorial:Subreportes
Enel tutorialanteriorvimoscomousargruposparagenerar lagrficade losdatosdeunreporte.Esesaocasin losgrupos fueronunelementosecundarioqueusamosparaauxiliarnosenlageneracindedichagrfica.
Ahoraveremoscmodebenserusados losgrupospara,bueno,agruparunconjuntodedatos relacionadosymostrarestosgruposdeforma clara en el reporte.Usaremos lamisma idea del tutorialanterior, en la que semostraron las ventas de las consolas de ltimageneracin (Wii, XBox 360, y PS3). Solo que en este casomostraremos por cada consola el nombre de los jugadores que las hancomprado,separadosclaramentedelosquehancompradolasotrasconsolas.
ParacomenzarcreamosunnuevoproyectoenNetBeans(File>NewProject...>Java>JavaApplication).Damosunnombreyunaubicacinanuestroproyectoypresionamoselbotn"Finish"paraquelaclaseMainaparezcaennuestroeditor.
Recuerdenagregar al nodo "Libraries" del panel "Projects" la biblioteca "JasperReports" que creamos en la primer parte deltutorialyeljar"commonslogging1.1.1.jar".
Usaremos lamismaclase "Jugador" enenel tutorialanterior paramantener los datos que sernmostrados en el reporte. La clasequeddelasiguienteforma:
publicclassJugador{privateintidprivateStringnombreprivateStringconsola
publicJugador(intid,Stringnombre,Stringconsola){this.id=idthis.nombre=nombrethis.consola=consola}
publicStringgetConsola(){returnconsola}
publicvoidsetConsola(Stringconsola){this.consola=consola}
publicintgetId(){returnid}
publicvoidsetId(intid){this.id=id}publicStringgetNombre()
DONACIONES
JAVATUTORIALESENFACEBOOK
JavaTutoriales
A24386personaslesgustaJavaTutoriales
PluginsocialdeFacebook
Megusta
JavaTutorialeshaaadidounafotonueva.
16MegustaSehacompartido1vez
Megusta Comentar
13demarzo
3 Ms Siguienteblog
http://www.javatutoriales.com/p/presentaciones-capacitacion.htmlhttp://javatutoriales.blogspot.com/2009/04/creacion-de-reportes-con-jasperrepots-y_18.htmlhttp://commons.apache.org/downloads/download_logging.cgihttp://www.javatutoriales.com/p/concursos.htmlhttp://javatutoriales.blogspot.com/2009/04/creacion-de-reportes-con-jasperrepots-y.htmlhttp://www.javatutoriales.com/http://www.javatutoriales.com/http://www.javatutoriales.com/p/tutoriales-upao-2010.htmlhttp://javatutoriales.blogspot.com/2009/04/creacion-de-reportes-con-jasperrepots-y_13.htmlhttp://javatutoriales.blogspot.com/2009/03/creacion-de-reportes-con-jasperrepots-y.htmlhttp://javatutoriales.blogspot.com/2009/02/creacion-de-reportes-con-jasperrepots-y.htmlhttp://javatutoriales.blogspot.com/2009/03/creacion-de-reportes-con-jasperrepots-y_30.htmlhttp://javatutoriales.blogspot.com/2009/04/creacion-de-reportes-con-jasperrepots-y_13.htmlhttp://javatutoriales.blogspot.com/2009/04/creacion-de-reportes-con-jasperrepots-y_13.htmlhttp://javatutoriales.blogspot.com/2009/04/creacion-de-reportes-con-jasperrepots-y_13.html -
14/4/2015 TutorialesdeProgramacionJava:CreacindeReportesconJasperRepotsyiReportsParte6:Grupos
http://www.javatutoriales.com/2009/04/creaciondereportesconjasperrepotsy_17.html 2/10
{returnnombre}
publicvoidsetNombre(Stringnombre){this.nombre=nombre}}
El cdigo que colocaremos en la clase Main es el mismo que en el tutorial anterior. Solo que en este caso en vez de tener 100jugadores,modificaremoslosciclosforparatenersolo10.Porlotantoquedandelasiguienteforma:
for(inti=1i
-
14/4/2015 TutorialesdeProgramacionJava:CreacindeReportesconJasperRepotsyiReportsParte6:Grupos
http://www.javatutoriales.com/2009/04/creaciondereportesconjasperrepotsy_17.html 3/10
Presionamoselbotn"Siguiente>".Enlapantallasiguientedejamosseleccionadaslasdosopciones("Addthegroupheader"y"Addthegroupfooter"). Presionamos en botn "Finalizar" con lo que veremos que en la plantilla de nuestro reporte hanaparecido dos nuevas bandas, "CONSOLAS Group Header" y "CONSOLAS Group Footer", adems de una nueva variable,CONSOLAS_COUNT:
Agregaruncuadronegro("Rectangle"de lapaletadeelementosdel reporte)en labanda"CONSOLASGroupHeader" parapoderdistinguirloenelmomentodegenerarelreportefinal.Ademsarrastraraestabandaelfield$F{consola}quecreamosanteriormente.Alarrastrareste fieldsenospreguntarques loquequeremosmostrar:elvalordelcampo("Thefieldvalue")oel resultadodeunafuncindeagregacin("Theresultofanaggregationfuction").Como loquequeremosmostrareselvalordelcampodejamosseleccionadalaprimeraopcin(siqueremosmostrarelnmerodeloselementosdelgrupopodemosvolveraarrastrarestefieldalabanda).
Si,al igualqueyo,agregaronelcuadronegroen labanda,serneccesarioquecambienelcolorde la letradelcampo(Forecolor)ablancoparapoderverlo.
Elreportefinaldebeversemsomenosas:
Ahoracambiamosa lapestaa"Preview"paraquesecompilenuestro reporteygenere,enelmismodirectorioenelquecolocamosnuestroarchivo"reporteGrupo.jrxml",elarchivo"reporteGrupo.jasper".
AhoraregresamosalNetBeansyejecutamosnuestraaplicacin.EstogenerarunarchivoPDFenelmismodirectorioquelosarchivos
enero(3)
Androidlatencyhigh?LowlatencyAndroidaudio.Easy.Stable.Justworks.
Alex
Programador Java con algunos aos deexperiencia en mltiples poyectos y conmltiples APIs y herramientas deseoso decompartir experiencias con el resto deprogramadores.
Vertodomiperfil
DATOSPERSONALES
http://www.blogger.com/profile/06974037481671868076http://4.bp.blogspot.com/_93xZudn-1kc/SepPiUfO4lI/AAAAAAAAARc/4rkVr7u3irI/s1600-h/JR6_4.pnghttp://www.javatutoriales.com/2009_01_01_archive.htmlhttp://2.bp.blogspot.com/_93xZudn-1kc/SepRVGSRiEI/AAAAAAAAARk/7EtU7SSevC4/s1600-h/JR6_5.pnghttp://3.bp.blogspot.com/_93xZudn-1kc/SepNJOQ-vAI/AAAAAAAAARU/jkNcLm73Gec/s1600-h/JR6_3.pngjavascript:void(0)http://2.bp.blogspot.com/_93xZudn-1kc/SepVMFC98dI/AAAAAAAAAR0/oiGUXuz-Oa0/s1600-h/JR6_6.pnghttp://www.blogger.com/profile/06974037481671868076 -
14/4/2015 TutorialesdeProgramacionJava:CreacindeReportesconJasperRepotsyiReportsParte6:Grupos
http://www.javatutoriales.com/2009/04/creaciondereportesconjasperrepotsy_17.html 4/10
.jrxmly.jasper.Elcontenidodelreporteelsiguiente:
Comopodemosver,lostresgrupos(unoporcadaconsola)semuestrandeformaindependienteunodeotro.Ademsencadagruposelistansololosjugadoresquetienenlaconsoladelgrupo.
ElcdigofinaldelaclaseMaineselsiguiente:
publicclassMain{publicstaticvoidmain(String[]args)throwsException{ListlistaJugadores=newArrayList()for(inti=1i
-
14/4/2015 TutorialesdeProgramacionJava:CreacindeReportesconJasperRepotsyiReportsParte6:Grupos
http://www.javatutoriales.com/2009/04/creaciondereportesconjasperrepotsy_17.html 5/10
PublicadoporAlexen19:49
Reacciones: divertido (2) interesante (2) increible (2) no me gusta (2)
Etiquetas:grupos,ireports,jasperreports,java,reportes
Visitalaparte1deestetutorial:ReportesconConexinaBasesdeDatosVisitalaparte2deestetutorial:UsandoDataSourcesPersonalizadosVisitalaparte3deestetutorial:ParmetrosyVariablesVisitalaparte4deestetutorial:ReportesenaplicacioneswebVisitalaparte5deestetutorial:GrficasenReportesVisitalaparte7deestetutorial:Subreportes
+3 Recomendar esto en Google
41comentarios:
Ro 25dejuniode2009,23:46
Imaginaquetengoenelinformeunaespeciedetablaconlassiguientescolumnas:aplicacin,puntuacionyempresa,(dondelaempresaes la que hizo la aplicacin y puntuacin es la puntuacin que tiene esa aplicacin).Yo quieromostrar la puntuacin promedio porempresa,seriacrearungrupoporempresas,yluegosumarlaspuntuacionesparacadaunadelasempresas.Cmopuedoindicarenunavariablequehagalasumadelacolumnapuntuacinperopertenecienteacadaempresa?
Responder
Alex 27dejuniode2009,7:38
Hola,efectivamente,tendrasquecrearungrupoporcadaempresa.
Paraindicarlavariabledelaquehablasbastacondefinirlaenelpanel"Reportinspector"enlaseccindevariablesycolocarladentrodelabandadelgrupoqueacabasdecrear,colocandoensuspropiedadesqueseaunasumadetucolumnapuntuacin.Conestolograrasqueesavariabletengalasumadelapuntuacindecadaempresa.
Saludos
Responder
Ro 29dejuniode2009,23:15
Estodelosgruposestpudiendoconmigo.Averestoytratandodehacerprimeroalgomssencillo,comoesungraficopie.Tengoenelinformelasiguienteinformacin(querecuperodesdeunjavaconJasperFillManager.fillReport):Aplicacion,criticidadyempresa,tengolostres fielddefinidos,enel informequegenreromuestroelvalordeesos trescamposyquieromostrarungrfico tipopieconel%deaplicaciones en funcion de la criticidad (hay criticas, altas, medias y bajas) me he generado un grupo para el campo criticidad(grupocriticidad)ytengolavariablegrupocriticidad_COUNTquesegeneraconelgrupo.Losdatosquepongoenelchartson:enkeyexpresionelcampocriticidad($F{criticidad})yenelvalorelvalordelavariablegrupocriticidad_COUNT($V{grupocriticidad_COUNT}),tengodedatos6aplicaciones,2criticas,2medias,1altay1baja,yenelgrficosiempremesalen4porcionescadaunaconun25%(indicandoqueslohayunadecada).Podrasdecirmequeestoyhacuendomal?
Graciasxanticipado.Annoheprobadolodelcomentarioanterior,xqnoeconseguidoquemefuncioneesto.Yatecomentoalgo
Responder
Ro 29dejuniode2009,23:32
Pareceserquesilosordenoporelgrupo(pongotodaslascriticasjuntas,todaslasaltas,etc.),simepintaelgrficobien.Esobligatoriotenerlosregistrosordenadosporelgrupoparaquelospintebien?
Responder
Alex 30dejuniode2009,6:45
HolaRo
Efectivamente,losregistrosdebenestarordenadosporelatributoqueteinteresegraficar(queentucasomeparecequeescriticidad)paraqueelgrficolomuestredemaneracorrecta.
Saludos
Responder
Ro 1dejuliode2009,3:55
Averporquemesurgeotraduda,yotengoenel informemostrado loscamposaplicacion,criticidad,puntuacin,yempresa.Yquierosacardosgrficosdistintos,porunladoeltipopieenelquehablenelcomentarioanterior,locualyaheconseguidoordenandolosdatosporelcampocriticidad.Peroahoraquierootragrfica,debarrasenelqueenelejedelasxseencuentrenlasempresasyenelejedelasylapuntuacinpromedioporempresa,paraellonecesitogenerarotrogrupo(empresa),yunavariablequesumelaspuntuacionesasociadasacadaempresaydividaporelnumerodeaplicacionesdelaempresa,peroclarolosdatosdelaempresanoestnordenadosporempresa(yaqueloshabaordenadoporcriticidad),comoarregloeso?
Responder
Ro 1dejuliode2009,7:37
Alfinalloheresueltousandosubinformes,nosesieslaopcinmsptima,perofunciona.Unacosillams,cmopuedopersonalizar
http://www.blogger.com/share-post.g?blogID=2012232069289957092&postID=6464614600349398707&target=pinteresthttp://www.blogger.com/profile/06974037481671868076http://www.javatutoriales.com/2009/04/creacion-de-reportes-con-jasperrepots-y_17.html?showComment=1245998817628#c3587006642305216163http://www.blogger.com/profile/12427990990093436129javascript:;http://www.javatutoriales.com/2009/04/creacion-de-reportes-con-jasperrepots-y_17.html?showComment=1246369521391#c2104210994170547645http://www.javatutoriales.com/2009/04/creacion-de-reportes-con-jasperrepots-y_17.html?showComment=1246113506532#c4424106859290276075http://www.javatutoriales.com/search/label/jasperreportshttp://www.javatutoriales.com/search/label/ireportshttp://www.javatutoriales.com/2009/04/creacion-de-reportes-con-jasperrepots-y_17.html?showComment=1246342516572#c6715130389326421605javascript:;javascript:;http://javatutoriales.blogspot.com/2009/03/creacion-de-reportes-con-jasperrepots-y_30.htmlhttp://javatutoriales.blogspot.com/2009/04/creacion-de-reportes-con-jasperrepots-y_13.htmlhttp://www.javatutoriales.com/search/label/reporteshttp://www.javatutoriales.com/2009/04/creacion-de-reportes-con-jasperrepots-y_17.htmljavascript:;http://www.blogger.com/profile/12427990990093436129http://www.blogger.com/share-post.g?blogID=2012232069289957092&postID=6464614600349398707&target=twitterhttp://www.javatutoriales.com/search/label/gruposhttp://www.blogger.com/share-post.g?blogID=2012232069289957092&postID=6464614600349398707&target=facebookhttp://javatutoriales.blogspot.com/2009/03/creacion-de-reportes-con-jasperrepots-y.htmlhttp://www.blogger.com/share-post.g?blogID=2012232069289957092&postID=6464614600349398707&target=emailhttp://www.blogger.com/profile/12427990990093436129http://javatutoriales.blogspot.com/2009/02/creacion-de-reportes-con-jasperrepots-y.htmlhttp://www.javatutoriales.com/search/label/javahttp://www.javatutoriales.com/2009/04/creacion-de-reportes-con-jasperrepots-y_17.html?showComment=1246343558229#c9218589094221788332http://www.javatutoriales.com/2009/04/creacion-de-reportes-con-jasperrepots-y_17.html?showComment=1246459029033#c6266822086983094529http://www.blogger.com/profile/06974037481671868076javascript:;http://www.javatutoriales.com/2009/04/creacion-de-reportes-con-jasperrepots-y_17.html?showComment=1246445707887#c96329776068485488http://www.blogger.com/share-post.g?blogID=2012232069289957092&postID=6464614600349398707&target=bloghttp://www.blogger.com/profile/12427990990093436129javascript:;http://javatutoriales.blogspot.com/2009/04/creacion-de-reportes-con-jasperrepots-y.htmlhttp://www.blogger.com/profile/12427990990093436129http://javatutoriales.blogspot.com/2009/04/creacion-de-reportes-con-jasperrepots-y_18.html