JasperReports er et åpen kildekode-rapporteringsverktøy for Java som genererer applikasjonsrapporter. Dette rapporteringsverktøyet støtter eksport av rikt rapportinnhold til skjermer, skrivere eller ulike filformater som HTML, PDF, XLS, RTF, CSV, XML, ODT og TXT.
JasperReports kan også brukes for Java-aktiverte applikasjoner som Java EE eller webapplikasjoner for å generere dynamisk innhold.
Installer JasperReports
Installer Jasper Reports Community Edition herfra.
https://community.jaspersoft.com/community-download
Jasper-rapportens struktur
.jrxml-rapportmalen består av følgende deler som vist i diagrammet nedenfor.
1. Tittelen inneholder rapportens "overskrift". Den dukker bare opp én gang i begynnelsen av rapporten. For eksempel heter rapporten «Student Report».
2. Sidetittelen kan inneholde dato- og klokkeslettinformasjon eller institusjonens navn. Den vises øverst på hver side. For eksempel: sidetittelen kan være "Studentregistre."
3. Kolonneoverskrifter viser navnene på spesifikke felt som skal vises i rapporten, som "Student-ID", "Studentnavn", "Studentadresse" osv.
4. Den detaljerte informasjonsseksjonen viser oppføringer for spesifikke felt. For eksempel: Student ID=101, Student Name="Den Peek", Student Address="Pune".
5. Kolonnefot kan vise summen av et hvilket som helst felt. For eksempel: «Total studietid: 6 timer per dag.»
6. Bunnteksten kan inneholde informasjon om sidetall. Den vises nederst på hver side, for eksempel: «Sidenummer 1, 2, 3, og alle sidetall.»
7. Sammendrag: Sammendraget av rapporten, skrevet minst én gang i sammendraget.
JasperReports — Livssyklus
Design rapporten — I dette steget lager vi en JRXML-fil, som er et XML-dokument som inneholder definisjonen av rapportoppsettet. Kompilasjonsrapport – I dette steget kompileres JRXML til et binært objekt kalt Jasper (*.jasper). Utfylling av data i rapporter – i dette steget fylles data fra applikasjonen inn i den sammensatte rapporten. Klassen net.sf.jasperreports.engine.JasperFillManager gir de nødvendige funksjonene som trengs for å fylle rapportdataene. Systemet vil lage en Jasper-utskriftsfil (*.jrprint), som kan brukes til å skrive ut eller eksportere rapporter. Eksportrapport – I dette steget kan vi bruke JasperExportManager for å eksportere Jasper-utskriftsfilen som ble opprettet i forrige steg til hvilket som helst format.
API-klasse
Det finnes mange klasser tilgjengelig for å kompilere JRXML-rapportdesign, fylle ut rapporter, skrive ut rapporter, eksportere dem som PDF-, HTML- og XML-filer.
Hvilket innhold finnes i pakken (net.sf.jasperreports.engine)?
· JasperCompileManager — Brukes til å kompilere JRXML-rapportmaler. · JasperFillManager — Brukes til å fylle rapporter med data fra datakilder. · JasperPrintManager — Brukes til å skrive ut dokumenter generert av JasperReports-biblioteket. · JasperExportManager — Brukes til å hente PDF-, HTML- eller XML-innhold fra dokumenter generert under rapportutfyllingsprosessen.
Datakilde
En datakilde er en strukturert databeholder. Når rapporter genereres, henter JasperReports-motoren data fra datakilden. Data kan hentes fra databaser, XML-filer, objektmatriser og objektsamlinger.
Tabellen nedenfor oppsummerer datakilder og deres implementeringsklasser—
Jasper Reports dataelementer
Parametere: $P $P{parameter_name)
· Den brukes for individuelle verdier i rapporten.
· Data som ikke kan sendes gjennom datakilden, kan sendes gjennom parametere. For eksempel rapporttitler og annen data.
· JasperReports-maler eller JRXML-maler kan ha null eller flere parameterelementer.
Felt: $F $F{field_name}
· Rapportfelt er elementer som representerer datakartleggingen mellom datakilder og rapportmaler.
Den brukes til å endre verdier i hver iterasjon, eller med andre ord, til å representere en rad med data i en tabell.
Variabel: $V $V{variable_name}
· Den leveres av Jasper reports.
Den brukes også til å utføre beregninger på Jasper-rapporter, som aritmetiske operasjoner.
Trinn for å opprette en hvilken som helst Jasper-rapport
1. Design malen ved å kopiere jrxml-filen til Spring Resources-mappen
2. Lag nødvendige parametere
3. Opprett datakilder
4. Kompil .jrmxl-malen som er lagret i JasperReport-objektet
5. Fyll ut rapporten—ved å sende kompilerte .jrxml-objekter, parametere og datakilder.
6. Eksportrapporter — Bruk JasperExportManager
Eksempel på SpringBoot — JasperReports
Legg til Maven-avhengigheter.
Kontroller
Tjeneste
emp24.jrxml
Etter kjøring vil du motta den genererte rapporten.http://localhost:8990/empapp/api/v1/reports/jasper/emp24?fileType=doc
JasperReports — Eksempel på en underrapportrepresentasjon
For underrapporter, åpne den eksisterende malen emp.jrxml, og legg til en annen mal user.jrxml som underrapport.
For å legge til en barnerapport i hovedrapporten, åpne hovedrapporten, klikk på barnerapporten i panelet, dra den til sammendragsområdet, og oppgi følgende detaljer.
Velg «Opprett kun barnerapportelementer», og klikk deretter på «Neste». Ikke bruk noen databaseforbindelser, gå deretter videre til neste steg og fullfør. Høyreklikk > Juster > Tilpass til bredde-/tabellformat
For User.jrxml-underrapporter vil vi sende underrapportdata fra hovedrapporten som parameter. For å oppnå dette trenger vi ......
Lag en ny parameter som subReport og datatypen JasperReport som i hovedrapporten Opprett nye parametere for underDatakilde og datatype JRBeanCollectionDataSource Opprett nye parametere subParametere og datatype Kart
Nå åpne underrapport-egenskapene
Eliminer $P{REPORT_CONNECTION} Uttrykk: $P{subReport} Parameterkartleggingsuttrykk: $P{subParameters} Datakildeuttrykk: $P{subReportDataSource}
Nå vil alle data vi sender som en parameter bli fylt inn i delrapporten.
Eksempelkode
empSubreport.jrxml
Test ham:http://localhost:8990/empapp/api/v1/reports/jasper/subreport?fileType=pdf
Referanse:Innloggingen med hyperkoblingen er synlig. Original:Innloggingen med hyperkoblingen er synlig. |