iReport est un utilitaire graphique qui permet de créer des rapports. Il s’appuie sur l’API JasperReports qui est très utilisée en Java. Tout comme JasperReports, iReport est un produit open source, sous licence de type GNU-GPL.

Principales caractéristiques de iReport

Voici une liste non exhaustive des possibilités offertes par iReport :

  • Support total des balises XML de JasperReport
  • Création des rapports sur un mode WYSIWYG. Il est possible de dessiner des rectangles, des lignes, des ellipses, des diagrammes, d’ajouter des champs de textes, des codes barre et de créer des sous rapports.
  • Éditeur d’expressions
  • Support d’unicode et des alphabets non latins tels que le Russe ou le Chinois
  • Explorateur de document
  • Compilation, ajout des données et export des rapports
  • Support de toutes les bases de données disposant d’un pilote JDBC, ainsi que d’autres sources de données comme les formats CSV et XML
  • Assistant pour la création automatique de rapports
  • Possibilité de créer des sous-rapports
  • Sauvegarde et restauration des modifications antérieures
  • Utilisation de modèles prédéfinis et création de modèles personnalisés
  • Support des polices TrueType
  • Gestion des informations propres à une zone géographique (langues et fuseaux horaires)
  • Extensible via des plug-ins

Principes de fonctionnement de l’API JasperReports

Le moteur de production des rapports prend en entrée 3 éléments essentiels :

  • Un fichier Jasper : ce fichier contient le squelette du rapport à créer. Il est obtenu par compilation d’un fichier XML (depuis la version 0.5.3 ces fichiers portent l’extension .jrxml au lieu de .xml).
  • Une source de données (JRDataSource) : les informations à présenter proviennent de cette source de données, qui peut être une base de données, un fichier CSV ou autre.
  • Une hash map qui contient les paramètres d’entrée du rapport. Ces paramètres peuvent ainsi être communiqués par le code exécutant le rapport.

Les diagrammes dans iReport

Plusieurs types de diagrammes peuvent être créés avec iReport : barres (2D, 3D), bulles, lignes, camemberts (2D, 3D), nuages de points, barres empilées (2D, 3D) … Il est également possible d’associer un hyperlien à une zone dans un diagramme.

iReport offre un grand nombre de propriétés pour paramétrer l’aspect du diagramme, sa position ainsi que les données représentées. Par exemple, il est possible de ne représenter que les données répondant à certains critères. Également, les données peuvent être regroupées selon des critères de sélection.