Tutoriel JasperReports : Qu'est-ce que le rapport Jasper pour Java ? Exemple

Qu'est-ce que JasperReports pour Java ?

JasperRapports est un outil de reporting open source pour Java utilisé pour le reporting des applications. Cet outil de reporting permet d'écrire du contenu riche sur l'écran, sur l'imprimante ou dans une variété de fichiers tels que HTML, PDF, XLS, RTF, CSV, XML, ODT et TXT. JasperReports peut également être utilisé pour des applications compatibles Java telles que Java EE ou des applications Web pour générer du contenu dynamique.

Comment installer Jasper Reports - Configuration de l'environnement

Maintenant, dans ce didacticiel Jaspersoft Studio, apprenons le processus étape par étape de configuration de l'environnement JasperReports :

Étape 1) Télécharger l'édition communautaire de Jasper Reports
Aller à cette Lien et cliquez sur l'option Télécharger maintenant pour installer l'édition Jasper Reports Community.

Installer Jasper Reports - Configuration de l'environnement

Étape 2) Sélectionnez Jaspersoft Studio CE
Parmi les éditions communautaires, sélectionnez Jaspersoft Studio CE

Installer Jasper Reports - Configuration de l'environnement

Étape 3) Télécharger Jaspersoft Studio
Aller à cette lien et cliquez sur le bouton Télécharger. ouvrez le téléchargement TIB_js-studiocomm_6.9.0_windows_x86_64.exe fichier.TIB_js-studiocomm_6.9.0_windows_x86_64.exe.

Installer Jasper Reports - Configuration de l'environnement

Étape 4) Cliquez sur le bouton d'accord
Following apparaîtra, sélectionnez le bouton J'accepte.

Installer Jasper Reports - Configuration de l'environnement

Étape 5) Choisissez l'emplacement
Sélectionnez votre emplacement d'installation et cliquez sur le bouton Suivant.

Installer Jasper Reports - Configuration de l'environnement

Étape 6) Les progrès sont en cours maintenant
Vous verrez la progression sur l’écran suivant.

Installer Jasper Reports - Configuration de l'environnement

Étape 7) Cliquez sur le bouton Terminer
Dans l'écran suivant, cliquez sur le bouton Terminer.

Installer Jasper Reports - Configuration de l'environnement

Étape 8) Les progrès sont terminés
Following L'écran apparaîtra dans votre fenêtre.

Installer Jasper Reports - Configuration de l'environnement

Étape 9) Commencez
Ensuite, cliquez sur l’option Commencer.

Installer Jasper Reports - Configuration de l'environnement

Étape 10) Commencez à travailler avec le studio Jasper Reports
Following L'écran apparaîtra, vous pouvez commencer à travailler avec Jasper Reports studio.

Installer Jasper Reports - Configuration de l'environnement

Pourquoi utiliser les rapports Jasper ?

Voici de nombreuses raisons d’utiliser un outil de rapport Jasper :

  • Il offre des performances de génération de rapports et leur livraison aux utilisateurs.
  • Il vous aide à représenter vos données sous forme textuelle ou graphique.
  • Il s'agit d'un serveur de reporting autonome et intégré pour la compilation et l'exécution de rapports.
  • Il permet un contrôle d'accès basé sur les rôles à tous les rapports du référentiel.
  • Un cadre de sécurité Spring pour l'intégration avec les systèmes d'authentification internes
  • Il offre un moteur de reporting interactif sécurisé, planifié et à livraison automatique.
  • Vous pouvez intégrer des rapports dans une application Java ou non Java.
  • Différents formats de rapports peuvent être exportés.
  • Les développeurs peuvent fournir des données de plusieurs manières.
  • Il peut générer des filigranes superposés à l’image principale.
  • Il offre un ensemble complet de SOAP, REST et services Web.
  • Il vous permet d'utiliser des données de rapport uniques provenant de plusieurs sources de données.

Cycle de vie de JasperReports

Maintenant, dans ce didacticiel JasperReports, nous allons en apprendre davantage sur le cycle de vie de JasperReports.

Following sont le flux général du cycle de vie des rapports Jasper :

Cycle de vie de JasperReports
Cycle de vie de JasperReports

Conception du rapport :

Ce sera la première étape où nous créerons le fichier JRXML. C'est le fichier qui est un simple document XML qui définit la présentation du rapport. Vous pouvez développer ce fichier à l'aide de n'importe quel éditeur de texte ou concepteur de rapports.

Cependant, si vous utilisez le concepteur de rapport, nous pouvons visualiser la présentation du rapport et la structure réelle du JRXML doit être ignorée.

Compilation du rapport :

Dans cette étape du cycle de vie, le JRXML construit lors de la première étape est compilé et un objet binaire appelé fichier Jasper (fichier avec jasper xtn) est généré.

Cette compilation est effectuée pour obtenir de meilleures performances lors de l'exécution. Ces fichiers Jasper générés doivent être livrés avec votre application pour exécuter les rapports.

Exécution du rapport :

À ce stade, les données de l'application sont collectées et remplies dans le format de rapport compilé. Il existe une classe appelée net.sf.jasperreports.engine.JasperFillManager qui propose des fonctions pour remplir les données dans les rapports.

La sortie sera stockée dans le fichier d'impression Jasper (fichier avec jprint xtn) qui peut être utilisé pour imprimer ou exporter le rapport.

Exporter le rapport au format souhaité :

Dans cette dernière étape, vous devez exporter le fichier d'impression Jasper créé précédemment dans n'importe quel format à l'aide de la classe JasperExportManager. Comme Jasper propose plusieurs formats d'exportation, nous pouvons utiliser la même entrée pour créer différentes représentations des données.

Caractéristiques des rapports Jasper

Nous allons maintenant aborder les fonctionnalités de JasperReports dans ce didacticiel étape par étape de JasperReports.

Voici les fonctionnalités importantes de l'outil Jasper Reports :

  • Offre une mise en page flexible des rapports.
  • Les développeurs peuvent fournir des données de plusieurs manières.
  • Il vous permet d'accepter des données provenant de plusieurs sources de données.
  • Des filigranes peuvent également être appliqués.
  • Plusieurs sources de données peuvent être utilisées pour transférer des données.
  • Vous pouvez générer des sous-rapports
  • Il peut générer des sous-rapports.
  • Il vous aide à exporter des rapports dans une variété de formats comme PDF, HTML, RTF, Microsoft Fichiers Excel.
  • Le moteur permet aux définitions de rapport d'inclure des graphiques.

Jasper contre Pentaho

Nous allons maintenant découvrir la différence entre Jasper et Pentaho dans ce didacticiel Jasper Reporting.

Voici les principales différences entre Jasper et Pentaho :

Paramètres Jasper Pentaho
Rapports Jasper utilise un rapport pour concevoir les rapports. Il a utilisé le Pentaho Report Designer.
Prise en charge ETL Jaspersoft utilise la version Talend Open Studio à des fins ETL. Il utilise Pentaho Data Integrator par défaut Outil ETL.
Tableau de bord La fonctionnalité du tableau de bord est présente uniquement dans l'éditeur Enterprise de Jaspersoft. Pentaho propose une large gamme de fonctionnalités dans ses tableaux de bord.
Intelligence d'affaires mobile Jaspersoft propose également une meilleure BI mobile. Pentaho avait l'habitude de s'appuyer sur un outil tiers pour améliorer l'expérience BI mobile.
Documentation Meilleur marketing, sites et documentation. Le support documentaire est médiocre.
Meilleure caractéristique Plus facile de rechercher et de trouver ce dont vous avez besoin. Offre l'exploration de données et l'intégration iPhone
Version payante La version payante offre des fonctionnalités telles que requête ad hoc web Ul, création de tableaux de bord web Ul. Offre des fonctionnalités telles que l'intégration LDAP, le SSO, l'audit, etc.

Création d'un exemple de modèle de rapport

Maintenant, dans ce didacticiel JasperReports, apprenons à créer un modèle de rapport dans JasperReports.

Le fichier de modèle de rapport utilisé dans JasperReports est un simple fichier XML ayant l'extension jrxml. Ce fichier contient la balise comme élément racine. Le framework JasperReports peut gérer différents types de sources de données.

Le modèle de rapport est conçu et créé à l'aide de la procédure suivantewing deux étapes -

Étape 1) Création du fichier JRXML dans Jaspersoft Studio.

  1. Accédez à l'option de fichier.
  2. Sélectionnez le sous-menu Nouveau
  3. Cliquez sur l'option Rapport Jasper.

Création d'un exemple de modèle de rapport

Étape 2) Sélection du modèle souhaité.

  1. Sélectionnez votre modèle, par exemple cerise.
  2. Cliquez sur le bouton "Suivant".

Création d'un exemple de modèle de rapport

Étape 3) Sélection d'un dossier parent.

  1. Sélectionnez le dossier Mes rapports.
  2. Saisissez le nom du fichier, par exemple « Cherry Report ».
  3. Cliquez sur le bouton "Suivant".

Création d'un exemple de modèle de rapport

Étape 4) Dans la fenêtre Source de données, cliquez sur le bouton « Nouveau » pour créer un nouvel adaptateur de données.

Création d'un exemple de modèle de rapport

Étape 5) Sélection d'un adaptateur de données.

  1. Sélectionnez l'adaptateur de données dans la liste box. Par exemple, « Collection de JavaBeans ».
  2. Cliquez sur le bouton "Suivant".

Création d'un exemple de modèle de rapport

Étape 6) Saisie de l'adaptateur de données details et en sélectionnant la classe d'usine.

  1. Entrez un nom pour votre adaptateur.
  2. Sélectionnez la classe d'usine en cliquant sur le bouton «…».

Création d'un exemple de modèle de rapport

Étape 7) Saisie d'un préfixe ou d'un modèle.

  1. Entrez le préfixe ou le modèle du nom.
  2. Cliquez sur les éléments correspondants.
  3. Cliquez sur le bouton «OK».

Création d'un exemple de modèle de rapport

Étape 8) Définition de la classe d'usine et ajout du chemin d'accès aux fichiers jar.

  1. Entrez le nom d'une méthode statique dans la classe d'usine. Dans cet exemple de rapports Jasper, il s'agit de createBeanCollection.
  2. Si votre définition JavaBeans comporte des descriptions de champs et que vous souhaitez les utiliser comme noms dans Jaspersoft Studio, cochez utiliser la description du champ.box.
  3. Ajoutez un chemin à vos fichiers jar.
  4. Cliquez sur le bouton « Terminer ».

Création d'un exemple de modèle de rapport

Étape 9) Cliquez sur le bouton "Suivant".

Création d'un exemple de modèle de rapport

Étape 10) Toutes nos félicitations! Vous avez ajouté avec succès toutes les informations nécessaires à la création du rapport. Cliquez sur le bouton « Terminer ».

Création d'un exemple de modèle de rapport

Le rapport sera généré comme indiqué dans l'écran ci-dessous.

Création d'un exemple de modèle de rapport

Le fichier ci-dessus doit être compilé au format binaire JasperReport, appelé fichier Jasper.

L'interface net.sf.jasperreports.engine.design.JRCompiler, qui fait partie de la bibliothèque JasperReports, joue un rôle important dans la compilation de ce fichier de modèle de rapport.

L'implémentation de cette interface peut être écrite en Java, JavaScript, Sensationnel, ou tout autre langage de script.

Vous pouvez compiler un fichier JRXML comme suitwing deux méthodes :

  • Compilation programmatique.
  • Compilation à l'aide de la tâche Apache ANT.

Comprendre les différentes bandes de rapport

Following sont des formats de rapport standard adoptés par la plupart des outils commerciaux de génération de rapports.

  • Titre
  • En-tête de page
  • En-tête de colonne
  • Détails
  • Pied de colonne
  • Pied de page
  • Résumé

Apprenons chaque bande de reporting en détail :

Titre:

Cette bande est affichée 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 :

Bande de rapport d’en-tête de page affichée au début de chaque page. Il exclut la première page si la bande de titre est utilisée et la dernière page si cette bande de résumé est utilisée avec réglage isSummaryWithPageHeaderAndFooter="false.".

En-tête de colonne :

Les en-têtes de colonnes apparaissent avant la bande de détails sur chaque page.

Détail:

Section détaillée itérée pour chaque enregistrement dans la source de données fournie. Cela permettait également d'avoir plusieurs bandes de détails (1, 2, etc.)

Pied de page de colonne :

Cette section 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, mais cela peut être basculé sous la dernière bande de détail en définissant l'attribut isFloatColumnFooter=" true."

Pied de page:

Cette section sera affichée à la fin de chaque page hors bande récapitulative, bande titre, et dernière bande non récapitulative.

Pied de page de la dernière page :

Cette section apparaît sur la page précédente (sinon une bande récapitulative est donnée) à la place du pied de page normal.

Résumé :

La section récapitulative n'apparaît qu'à la fin du rapport sur une nouvelle page. quand isSummaryNewPage="true" est défini et avec l'en-tête et le pied de page sont définis isSummaryWithPageHeaderAndFooter="true".

En-tête de groupe:

Cette section n'apparaît que lorsqu'elle est définie à chaque fois que l'expression de groupe change avant la bande de détail.

Pied de page du groupe :

Cette section s'affiche uniquement si un groupe est défini à chaque fois avant le changement d'expression de groupe après la bande de détail.

Contexte:

Il est affiché sur toutes les pages en arrière-plan de toutes les autres bandes de reporting.

Pas de données:

Cette bande apparaîtra lorsqu'aucune source de données n'a été transmise ou que la source de données est vide et lorsque NoDataType=”NoDataSection” est défini.

Défis rencontrés lors de la création de JasperReports

Voici quelques défis auxquels vous serez confronté lors de la création de rapports Jasper :

  • Changements fondamentaux – Les changements ou améliorations de l’entreprise. Il est nécessaire de modifier la logique fondamentale du rapport.
  • Rapports compliqués – les sous-rapports et les rapports croisés en sont un bon exemple.
  • Rapports graphiques ou graphiques visuels, par exemple graphiques, courbes XY, secteurs, barres, séries chronologiques et compteurs.

Inconvénients de l'utilisation des rapports Jasper

Voici les inconvénients/inconvénients de l’utilisation de Jasper Reports.

  • Une fois que vous commencez à apporter des modifications à certaines parties du package et à supprimer des fonctionnalités, il est très difficile de revenir aux paramètres par défaut du package.
  • C'est trop rigide, l'édition de lignes et la création de tableaux croisés sont une tâche difficile.
  • Certaines tâches courantes, comme la spécification de sous-totaux pour un rapport groupé, sont plus faciles dans les deux autres concepteurs de rapports.
  • Jasper nécessite que vous compiliez des rapports avant de les exécuter. Cela signifie que les développeurs de rapports doivent avoir installé l'intégralité du SDK Java.
  • Parfois, lorsque vous modifiez le rapport, celui-ci n'affiche pas le même aperçu que celui affiché sur le Web.

Résumé

  • JasperReports est un moteur de reporting Java open source. Cette bibliothèque de classes Java offre des fonctionnalités de reporting pour votre application.
  • Jasper Reports offre des performances de génération de rapports et leur livraison aux utilisateurs.
  • Le cycle de vie de Jasper Reports comprend 1) la conception de rapports, 2) la compilation de rapports, 3) l'exécution du rapport et 4) l'exportation du rapport au format souhaité.
  • Dans Jasper Reports, vous pouvez créer plusieurs sources de données pour transférer des données.
  • La principale différence entre Jasper et Pentaho est que les rapports Jasper utilisent un rapport pour concevoir les rapports tandis que Pentaho utilise le Pentaho Report Designer.
  • Le fichier de modèle de rapport utilisé dans JasperReports est un simple fichier XML ayant l'extension jrxml.
  • Les bandes de rapports importantes sont : 1) Titre 2) En-tête de page 3) En-tête de colonne 4) Détails 5) Pied de page de colonne 6) Pied de page et 7) Résumé.
  • Le plus grand défi lié à l'utilisation de Jasper Reports est que vous devez modifier la logique de base du rapport si la logique métier change.
  • Le plus gros inconvénient de Jasper Reports est que lorsque vous apportez des modifications à certaines parties du package, il est difficile de revenir aux paramètres par défaut du package.