Premiers pas avec les rapports Jasper
Formats de fichier de rapport Jasper
-
.jrxml
est le fichier de conception du rapport, son format est en XML lisible par l’homme, il peut être compilé dans un objetJasperReport
et enregistré en tant que.jasper
-
.jasper
est la version compilée du.jrxml
et peut être chargé directement dans un objetJasperReport
prêt à être rempli de données -
.jrprint
est l’objet sérialiséJasperPrint
, un rapport qui a déjà été rempli de données et qui peut être chargé pour être imprimé, visualisé et/ou exporté au format souhaité. -
.jrpxml
est le rappresentativo XML d’un objetJasperPrint
, il peut être modifié puis désorganisé pour récupérer l’objetJasperPrint
Installation ou configuration
Bibliothèque de rapports Jasper
JasperReports est un outil de création de rapports open source basé sur Java. La bibliothèque JasperReports peut être téléchargée depuis la Communauté Jaspersoft pour la dernière [version](http://community.jaspersoft.com/project/jasperreports-library/ sorties).
Dans les versions récentes, les jars tiers dans le dossier lib ne sont ** pas ** distribués, ils doivent être téléchargés à partir de référentiels publics, voir
pom.xml
distribué pour les dépendances. Maven peut être utilisé pour récupérer toutes les dépendances, y compris celles transitoires dans le dossier cible/dépendance.
mvn dependency:copy-dependencies
Jaspersoft Studio (IDE)
[Jaspersoft Studio] [1] est le client de conception officiel pour JasperReports - construit sur la plate-forme Eclipse - pour remplacer iReport Designer.
Concepteur iReport (IDE)
[iReport Designer][2] est l’ancien concepteur de rapports pour JasperReports. La version 5.6.0 (publiée en mai 2014) était la dernière version officielle ; le support fournisseur a pris fin fin 2015.
ressources de la communauté JasperReport
### FAQ de la bibliothèque JasperReports
- [FAQ][8]
Code source
- [Code source de la bibliothèque JasperReports][16]
Tutoriels
- [Point Tutoriels] [9]
- [Guide ultime de JasperReports] [14]
Échantillons
- [Exemple de référence][13]
Références
- [Documentation officielle][10]
- [Wiki communautaire][11]
Outil de suivi des bogues officiel
- [Traqueur de bogues][15]
[1] : http://community.jaspersoft.com/project/jaspersoft-studio [2] : http://community.jaspersoft.com/project/ireport-designer [8] : http://community.jaspersoft.com/wiki/jasperreports-library-faqs [9] : http://www.tutorialspoint.com/jasper_reports/index.htm [10] : http://community.jaspersoft.com/documentation?version=13758 [11] : http://community.jaspersoft.com/wiki/community-wiki [12] : http://sourceforge.net/projects/jasperreports/files/jasperreports/ [13] : http://jasperreports.sourceforge.net/sample.reference.html [14] : http://jasperreports.sourceforge.net/JasperReports-Ultimate-Guide-3.pdf [15] : http://community.jaspersoft.com/bug-tracker [16] : https://sourceforge.net/p/jasperreports/code/ci/master/tree/
Flux de travail
Le flux de travail dans les rapports Jasper est :
-
Concevez le rapport, créez le fichier jrxml qui définit la présentation du rapport. Le jrxml peut être créé en utilisant un simple éditeur de texte mais normalement un IDE (JasperSoft Studio ou iReport) est utilisé à la fois pour accélérer le développement du rapport mais aussi pour avoir une vue visuelle de la mise en page.
-
Compilez le rapport (le jrxml) pour obtenir un fichier .jasper ou un objet [JasperReport][1]. Ce processus peut être comparé à un fichier
.java
compilé en.class
. -
[Remplissez le rapport][2], transmettez des paramètres et une source de données au rapport pour générer l’objet d’impression [JasperPrint][3] qui peut également être enregistré dans un fichier
.jprint
-
Affichez, imprimez et/ou exportez JasperPrint. Les formats d’exportation les plus courants sont pris en charge en tant que pdf, excel, word, html, cvs, etc.
[1] : http://jasperreports.sourceforge.net/api/net/sf/jasperreports/engine/JasperReport.html [2] : https://www.wikiod.com/fr/jasper-reports/remplir-le-rapport [3] : http://jasperreports.sourceforge.net/api/net/sf/jasperreports/engine/JasperPrint.html
Comprendre les différentes bandes de rapport
Titre
Cette bande est montrée une fois au début du rapport. Il peut être utilisé comme première page en définissant l’attribut isTitleNewPage="true"
En-tête de page
Cela apparaît au début de chaque page, à l’exception de la première page si la bande de titre est utilisée et de la dernière page si la bande de résumé est utilisée avec le paramètre isSummaryWithPageHeaderAndFooter="false"
En-tête de colonne
Ceci apparaît avant la bande de détail sur chaque page.
Détail
Cette section est itérée pour chaque enregistrement dans la source de données fournie. Il est permis d’avoir plusieurs bandes de détails (détail 1, détail 2 .. détail n), elles sont itérées comme suit
Row 1
detail 1
detail 2
detail n
Row 2
detail 1
detail 2
detail n
Pied de colonne
Cela apparaît sous la bande de détail sur chaque page où la bande de détail est présente. Le paramètre par défaut est la fin de la page (avant le pied de page) mais cela peut être basculé sous la dernière bande de détail (dernier enregistrement) en définissant l’attribut isFloatColumnFooter="true"
Pied de page
Ceci apparaît au bas de chaque page à l’exclusion de la bande de titre, de la bande récapitulative (sans pied de page) et de la dernière bande non récapitulative si le dernier pied de page est utilisé.
Dernier pied de page
Ceci apparaît sur la dernière page (s’il ne s’agit pas d’une bande récapitulative sans pied de page) au lieu du pied de page normal
Sommaire
Cela apparaît à la fin du rapport dans une nouvelle page si isSummaryNewPage="true"
est défini et avec l’en-tête et le pied de page si isSummaryWithPageHeaderAndFooter="true"
En-tête de groupe
Cette section apparaît si un groupe est défini chaque fois que l’expression du groupe change, avant la bande de détail.
Pied de page du groupe
Cette section apparaît si un groupe est défini à chaque fois avant que l’expression du groupe change, après la bande de détail.
Arrière plan
Cette bande est affichée sur chaque page en arrière-plan de toutes les autres bandes.
Pas de données
Ceci apparaît uniquement si aucune source de données n’a été transmise ou si la source de données est vide (0 enregistrement) et whenNoDataType="NoDataSection"
est défini.