SlideShare ist ein Scribd-Unternehmen logo
1 von 33
1
Ensemble de besoins divers :

• Besoin d’un outil de Reporting pour les
  analystes afin de présenter facilement les
  données chiffrées de l'entreprise et leurs
  évolutions.
• Besoin de fusionner ces données afin de leur
  associer des modèles de documents déjà
  élaborés.
                                                 2
Les objectifs de reporting :
• L'extraction sélective des
   informations à partir des
   tableurs, des bases ou des
   Datawarehouses.
• Le tri suivant des critères de
   progression judicieux.
• La mise en forme, la plus claire et
   la plus agréable possible.

          Le reporting est une technique stratégique
                 qui aide à la prise de décision       3
4
•   jasperReport : Présentation/objectifs/fonctionnalites
•   IReport
•   Historique/ nouveautés
•   Cycle vie d’un rapport/ parties d’un rapport
•   Sources de données
•   Expressions /paramètres/variables
•   Langage de scripts
•   Représentation des données
•   SubReports
•   Dépendance
•   Subreports
•   Business intelligence suite
•   Conclusion

                                                            5
• Librairie open source de reporting, qui permet de
  fournir des données sur l'écran, à l'imprimante, ou
  en différents formats de fichier.

• Entièrement écrit en Java ,il peut s'utiliser dans
  diverses applications comme :
  -Une application Java
  -Une application Web J2EE
  Ou comme un outil indépendant

                                                        6
Son objectif principal est d'aider à
créer les rapports et des documents prêts à
être imprimés de manière simple et flexible.

      Il permet la représentation de données
 sous forme textuelle, mais aussi la
 génération de graphiques divers (sous forme
 de barre, courbe, nuage de point).

                                               7
JasperReports offre les fonctionnalités suivantes :
• Une structure de page flexible
• Possibilité de présenter les données de manière
  variée (textuel, graphique)
• Export dans une grande variété de formats
• Possibilité de fournir les données sous
  différentes formes (paramètres, sources de
  données)
• Gestion de sous rapports

                                                      8
• iReport est un open source report
  designer pour JasperReports.
• C’est un outil WYSIWYG pour tous les éléments
  graphiques.
• iReport assiste l’utilisateur durant toutes les
  phases de l'élaboration du rapport: la
  conception jrxml, compilation Jasper,
  l'exécution du rapport, et à l'exportation ou
  la visualisation de documents.


                                                    9
• Juin 2001:
  -Teodor Danciu commencé à travailler sur JasperReports
• 3 Novembre 2001:
  -publication de JasperReports 0.1.5
  -Jaspersoft (Panscopic) fondée par Al Campa et Raj Bhargava.
• 2004:
  - Panscopic équipe avec Teodor Danciu, a acquis la propriété
  intellectuelle de JasperReports
• 21 Juillet 2005:
  -Version1.0

                                                                 10
• JasperReport 3.1.2(06 novembre 2008)
  -Compilateur basé sur la bibliothèque de soutient Rhino JavaScript
   comme la langue d'expression du rapport
• JasperReport 3.5.1(02 juin 2009)
   -Personnalisation de l’exportateur PDF en utilisant des éléments
   génériques.
• JasperReport 3.7.1(08 février 2010)
   -Nouveaux exportateurs: HTML, XHTML
• JasperReport 3.7.2(12 avril 2010)
  -Nouveau exportateur PPTX(PPT 2007)
• JasperReport 3.7.5(22 September 2010 )
  -trie des ensembles de données en utilisant des variables
   -Le support de Custonizer pour Spidercharts

                                                                       11
• JasperReport 3.7.6(28 Septembre 2010)
    -Amélioration de l’exportateur XLSX
    -Correction dans l’exportateur XLS
• iReport 3.7.6(01 Novembre 2010)
 -Mise à jour de SQL Designer
 -Support Complet de JasperReport 3.7.6
 -Ajout de support JRDataSourceProvider pour
 l’utiliser avec le Wizard.
                                               12
Phase de design             Phase d’exécution
                                                            Phase d’export




    génère

                       compile                  fill




 JRXMLLoader          JRCompiler        JasperFillManager

                                                        JasperExportManager
             JasperCompileManager                                            13
14
Zone qui n’est affichée qu’une seule fois         Apparaît à la fin de chaque colonne.
        en haut de la 1eré page.                          N’est pas redimensionnable au moment
        Contient le nom du rapport, logo de               de l'exécution
        l'entreprise et d'autres informations
Placée générales. de la section « Title »
        au dessous
Son contenu est affiché en haut de chaque                            Apparaît sur chaque page où il
Partie où on définit les entête des                  Permet d’insérerune tête de page.
page du rapport.                                                     ya des champs concernants
colonnes d’un tableau, elles seront                  le calcul total, moyen, ou quel que soit
répétées sur chaque page du rapport ou               ce qu’on veut ajouter à la fin du rapport
le tableau est présent.
Section principale du rapport :« Corps du rapport »
Contient les données que l’on affiche issues de la
requête SQL.
Cette zone est reproduite pour chaque ligne du résultat
renvoyé par la requête SQL.
                                                                                                15
N'est affiché qu'une seule fois en
bas de la dernière page.




Arrière plan de la page ou on peut
mettre un logo ou autre aussi des
éléments dynamiques.




                                     16
Paramètres d’entrée
 du rapport




                                                            Fichier CSV




Accès JDBC-Bases de données:
Oracle, Mysql….                Collection de java Bean   Fichier XML
                                                                  17
18
Pour l’affichage des données calculées, non
 statiques dans un rapport. On les appellent aussi des
 champs ou Fiels
        Ce sont les résultats d’une requête SQL ou
 d’une autre source de donnée. Elles changent
 dynamiquement tant que JasperReport lit les
 enregistrements .

            Syntaxe: $F{NOMDUCHAMP}


19
Il existe deux types de paramètres :
• les paramètres intégrés :          obligatoires pour le bon
fonctionnement du rapport. Comme le paramètre intégré de
connexion à la base de données
•les paramètres utilisateurs : facultatifs et définites par le
programmeur.
 Exemple : on désire afficher les utilisauteurs dont le pays=
« Tunisie », « Tunisie » sera entré comme paramètre, la
requête SQL ressemblera à :
       SELECT * FROM T_user WHERE pays=$P{PAYS_USER}


                Syntaxe: $P{NOMDUPARAMETRE}


20
Les variables permettent de
    • Simplifier les expressions dans un rapport en éliminant leurs
      redondances
    • Faire des calculs complexes à faire avec les expressions
      (somme, moyenne, maximum, etc.)

Les variables sont des valeurs qui n'existent que dans le rapport.:
    • Les variables intégrées: sont par exemple le numéro de la
       page,ou le nombre d'enregistrement par page .
    • Les variables utilisateurs : simples ou définies comme la
       sommes des valeurs de plusieurs champs .

                   Syntaxe: $V{NOMDELAVARIABLE}

  21
22
IReport supporte l’utilisation de langages de scripts :

• JavaScript: langage de scripts principalement utilisé dans
  les pages web interactives mais aussi coté serveur .

• Groovy :C'est un langage orienté objet pour la JVM Java
  qui s'inspire entre autres de Python, Java, Ruby et
  Smalltalk. Ce langage possède une syntaxe proche de
  Java et génère directement du bytecode.
                                                          23
• Représentation des données sous forme :

• Textuelle
• Graphique

      Ces représentations permettent d’afficher
des données dynamiques, qui ne seront pas
passées directement au rapport mais calculées à
partir des données fournies.
                                              24
La palette de représentation graphique
proposée est large, elle comporte :
• les barres (2D, 3D, en relief, empilées 2D,
  empilées 3D)
• Les courbes
• Les nuages de points
• minimum/maximum, cadran, thermomètre.
• Etc.
                                                25
Tout rapport peut devenir le sous rapport
d’un autre. Cette technique propose deux
avantages principaux :
• Simplification de la réalisation d’un rapport
  en découpant la complexité .
• Possibilité de réutilisation dans plusieurs
  rapports différents d’un même sous rapport
  présentant un affichage fréquent.

                                              26
un rapport enfant, a sa propre requête SQL pour extraire
      les enregistrements de la base de données.

                                                           27
28
JasperReports s’appuie sur plusieurs librairies
Java open source pour implémenter ses fonctionnalités:

• iText : pour la génération de PDF
• JFreeChart : pour la génération de diagrammes
  et graphiques
• Jakarta POI : pour la génération de documents
  Microsoft Office
• JAXP : pour le parsing et la transformation de
  XML

                                                     29
JasperReports propose également pour la réalisation
de rapports un lot de fonctions avancées telles que :
• Gestion de l’internationalisation
• Scriptlets
• Tableaux croisés
• Ancres et liens dans les documents
• Gestion des marques pages dans les fichiers PDF
• Gestion des formules dans les documents Excel
• Gestion avancée de la mémoire pour les très gros rapports
  (Virtualizer)

                                                            30
31
• Les avantages de JasperReports :
       -Des fonctionnalités avancées, notamment pour la
représentation de graphique,
       -l’outil iReport offre des avancés importantes en matière de
productivité pour des rapports complexes.

• Les inconvénients de JasperReports:
        -Certaines limitations telqu’une seule datasource/connexion
par rapport.
        - Documentation officielle limtée, ou payante, ce qui implique
un temps de prise en main de l’outil un peu long de prime abord.



                                                                      32
33

Weitere ähnliche Inhalte

Was ist angesagt?

Architectures orientés services (SOA)
Architectures orientés services (SOA)Architectures orientés services (SOA)
Architectures orientés services (SOA)Heithem Abbes
 
Appalications JEE avec Servlet/JSP
Appalications JEE avec Servlet/JSPAppalications JEE avec Servlet/JSP
Appalications JEE avec Servlet/JSPYouness Boukouchi
 
P2 éléments graphiques android
P2 éléments graphiques androidP2 éléments graphiques android
P2 éléments graphiques androidLilia Sfaxi
 
Dockerizing An Angular Application Using Git, Jenkins & Docker! | DevOps Tuto...
Dockerizing An Angular Application Using Git, Jenkins & Docker! | DevOps Tuto...Dockerizing An Angular Application Using Git, Jenkins & Docker! | DevOps Tuto...
Dockerizing An Angular Application Using Git, Jenkins & Docker! | DevOps Tuto...Edureka!
 
Tp1 - WS avec JAXWS
Tp1 - WS avec JAXWSTp1 - WS avec JAXWS
Tp1 - WS avec JAXWSLilia Sfaxi
 
Workshop spring session 2 - La persistance au sein des applications Java
Workshop spring   session 2 - La persistance au sein des applications JavaWorkshop spring   session 2 - La persistance au sein des applications Java
Workshop spring session 2 - La persistance au sein des applications JavaAntoine Rey
 
Introduction à React JS
Introduction à React JSIntroduction à React JS
Introduction à React JSAbdoulaye Dieng
 
Introduction à spring boot
Introduction à spring bootIntroduction à spring boot
Introduction à spring bootAntoine Rey
 
Prise en main de Jhipster
Prise en main de JhipsterPrise en main de Jhipster
Prise en main de JhipsterKokou Gaglo
 
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliothequeEcole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliothequeMehdi Hamime
 

Was ist angesagt? (20)

Architectures orientés services (SOA)
Architectures orientés services (SOA)Architectures orientés services (SOA)
Architectures orientés services (SOA)
 
Cours JavaScript
Cours JavaScriptCours JavaScript
Cours JavaScript
 
Support developpement applications mobiles avec ionic v3 et v4
Support developpement applications mobiles avec ionic v3 et v4Support developpement applications mobiles avec ionic v3 et v4
Support developpement applications mobiles avec ionic v3 et v4
 
Jasper Reports.pptx
Jasper Reports.pptxJasper Reports.pptx
Jasper Reports.pptx
 
Appalications JEE avec Servlet/JSP
Appalications JEE avec Servlet/JSPAppalications JEE avec Servlet/JSP
Appalications JEE avec Servlet/JSP
 
React-cours.pdf
React-cours.pdfReact-cours.pdf
React-cours.pdf
 
Support de cours technologie et application m.youssfi
Support de cours technologie et application m.youssfiSupport de cours technologie et application m.youssfi
Support de cours technologie et application m.youssfi
 
P2 éléments graphiques android
P2 éléments graphiques androidP2 éléments graphiques android
P2 éléments graphiques android
 
Dockerizing An Angular Application Using Git, Jenkins & Docker! | DevOps Tuto...
Dockerizing An Angular Application Using Git, Jenkins & Docker! | DevOps Tuto...Dockerizing An Angular Application Using Git, Jenkins & Docker! | DevOps Tuto...
Dockerizing An Angular Application Using Git, Jenkins & Docker! | DevOps Tuto...
 
Tp1 - WS avec JAXWS
Tp1 - WS avec JAXWSTp1 - WS avec JAXWS
Tp1 - WS avec JAXWS
 
Introduction à React
Introduction à ReactIntroduction à React
Introduction à React
 
Workshop spring session 2 - La persistance au sein des applications Java
Workshop spring   session 2 - La persistance au sein des applications JavaWorkshop spring   session 2 - La persistance au sein des applications Java
Workshop spring session 2 - La persistance au sein des applications Java
 
Introduction à React JS
Introduction à React JSIntroduction à React JS
Introduction à React JS
 
Introduction à Angular
Introduction à AngularIntroduction à Angular
Introduction à Angular
 
Introduction à spring boot
Introduction à spring bootIntroduction à spring boot
Introduction à spring boot
 
Angular
AngularAngular
Angular
 
Prise en main de Jhipster
Prise en main de JhipsterPrise en main de Jhipster
Prise en main de Jhipster
 
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliothequeEcole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
 
Support Java Avancé Troisième Partie
Support Java Avancé Troisième PartieSupport Java Avancé Troisième Partie
Support Java Avancé Troisième Partie
 
Lab2-DB-Mongodb
Lab2-DB-MongodbLab2-DB-Mongodb
Lab2-DB-Mongodb
 

Ähnlich wie JasperReport

Infrastructure - Monitoring - Cacti
Infrastructure - Monitoring - CactiInfrastructure - Monitoring - Cacti
Infrastructure - Monitoring - CactiFrédéric FAURE
 
SSAS 2012 : Multidimensionnel et tabulaire au banc d'essai
SSAS 2012 : Multidimensionnel et tabulaire au banc d'essaiSSAS 2012 : Multidimensionnel et tabulaire au banc d'essai
SSAS 2012 : Multidimensionnel et tabulaire au banc d'essaiMicrosoft Technet France
 
Restitution des données environnement Microsoft & data visualization : panel ...
Restitution des données environnement Microsoft & data visualization : panel ...Restitution des données environnement Microsoft & data visualization : panel ...
Restitution des données environnement Microsoft & data visualization : panel ...Microsoft
 
X-Analysis Professional - FR
X-Analysis Professional - FRX-Analysis Professional - FR
X-Analysis Professional - FRFresche Solutions
 
Nouveautés de DataDrill EXPRESS 3.8 & 4.0
Nouveautés de DataDrill EXPRESS 3.8 & 4.0Nouveautés de DataDrill EXPRESS 3.8 & 4.0
Nouveautés de DataDrill EXPRESS 3.8 & 4.0Olivier Pinette
 
X-Analysis Professional - version française
X-Analysis Professional - version françaiseX-Analysis Professional - version française
X-Analysis Professional - version françaiseFresche Solutions
 
2009-03-13 SQL Server une plateforme crédible
2009-03-13 SQL Server une plateforme crédible2009-03-13 SQL Server une plateforme crédible
2009-03-13 SQL Server une plateforme crédiblePatrick Guimonet
 
Presentation du SGBD Oracle DATABASE.pptx
Presentation du SGBD Oracle DATABASE.pptxPresentation du SGBD Oracle DATABASE.pptx
Presentation du SGBD Oracle DATABASE.pptxPriscilleGANKIA
 
La caisse à outils de la visualisation d'informations
La caisse à outils de la visualisation d'informationsLa caisse à outils de la visualisation d'informations
La caisse à outils de la visualisation d'informationsChristopheTricot
 
USI 2013 : 7 changements nécessaires pour sauver vos SI décisionnels
USI 2013 : 7 changements nécessaires pour sauver vos SI décisionnelsUSI 2013 : 7 changements nécessaires pour sauver vos SI décisionnels
USI 2013 : 7 changements nécessaires pour sauver vos SI décisionnelsJoseph Glorieux
 
Retour d'expérience Bouygues Telecom : Analyse BI à l'aide d'une appliance SQ...
Retour d'expérience Bouygues Telecom : Analyse BI à l'aide d'une appliance SQ...Retour d'expérience Bouygues Telecom : Analyse BI à l'aide d'une appliance SQ...
Retour d'expérience Bouygues Telecom : Analyse BI à l'aide d'une appliance SQ...Microsoft Technet France
 
Pentaho: comparatif CE versus EE
Pentaho: comparatif CE versus EEPentaho: comparatif CE versus EE
Pentaho: comparatif CE versus EESylvain Decloix
 
Environnements & Développements
Environnements & DéveloppementsEnvironnements & Développements
Environnements & DéveloppementsPaulin CHOUDJA
 
Formation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPFFormation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPFBoubker ABERWAG
 
Presentation mug-data mapper
Presentation mug-data mapperPresentation mug-data mapper
Presentation mug-data mapperFastConnect
 
Azure Camp 9 Décembre - slides session développeurs webmedia
Azure Camp 9 Décembre - slides session développeurs webmediaAzure Camp 9 Décembre - slides session développeurs webmedia
Azure Camp 9 Décembre - slides session développeurs webmediaMicrosoft
 

Ähnlich wie JasperReport (20)

Infrastructure - Monitoring - Cacti
Infrastructure - Monitoring - CactiInfrastructure - Monitoring - Cacti
Infrastructure - Monitoring - Cacti
 
SSAS 2012 : Multidimensionnel et tabulaire au banc d'essai
SSAS 2012 : Multidimensionnel et tabulaire au banc d'essaiSSAS 2012 : Multidimensionnel et tabulaire au banc d'essai
SSAS 2012 : Multidimensionnel et tabulaire au banc d'essai
 
Restitution des données environnement Microsoft & data visualization : panel ...
Restitution des données environnement Microsoft & data visualization : panel ...Restitution des données environnement Microsoft & data visualization : panel ...
Restitution des données environnement Microsoft & data visualization : panel ...
 
Présentation LO-Cockpit , SAP
Présentation LO-Cockpit , SAPPrésentation LO-Cockpit , SAP
Présentation LO-Cockpit , SAP
 
Base donnes my_sql
Base donnes my_sqlBase donnes my_sql
Base donnes my_sql
 
X-Analysis Professional - FR
X-Analysis Professional - FRX-Analysis Professional - FR
X-Analysis Professional - FR
 
MERAZKA Messaoud
MERAZKA MessaoudMERAZKA Messaoud
MERAZKA Messaoud
 
Nouveautés de DataDrill EXPRESS 3.8 & 4.0
Nouveautés de DataDrill EXPRESS 3.8 & 4.0Nouveautés de DataDrill EXPRESS 3.8 & 4.0
Nouveautés de DataDrill EXPRESS 3.8 & 4.0
 
Xml
XmlXml
Xml
 
X-Analysis Professional - version française
X-Analysis Professional - version françaiseX-Analysis Professional - version française
X-Analysis Professional - version française
 
2009-03-13 SQL Server une plateforme crédible
2009-03-13 SQL Server une plateforme crédible2009-03-13 SQL Server une plateforme crédible
2009-03-13 SQL Server une plateforme crédible
 
Presentation du SGBD Oracle DATABASE.pptx
Presentation du SGBD Oracle DATABASE.pptxPresentation du SGBD Oracle DATABASE.pptx
Presentation du SGBD Oracle DATABASE.pptx
 
La caisse à outils de la visualisation d'informations
La caisse à outils de la visualisation d'informationsLa caisse à outils de la visualisation d'informations
La caisse à outils de la visualisation d'informations
 
USI 2013 : 7 changements nécessaires pour sauver vos SI décisionnels
USI 2013 : 7 changements nécessaires pour sauver vos SI décisionnelsUSI 2013 : 7 changements nécessaires pour sauver vos SI décisionnels
USI 2013 : 7 changements nécessaires pour sauver vos SI décisionnels
 
Retour d'expérience Bouygues Telecom : Analyse BI à l'aide d'une appliance SQ...
Retour d'expérience Bouygues Telecom : Analyse BI à l'aide d'une appliance SQ...Retour d'expérience Bouygues Telecom : Analyse BI à l'aide d'une appliance SQ...
Retour d'expérience Bouygues Telecom : Analyse BI à l'aide d'une appliance SQ...
 
Pentaho: comparatif CE versus EE
Pentaho: comparatif CE versus EEPentaho: comparatif CE versus EE
Pentaho: comparatif CE versus EE
 
Environnements & Développements
Environnements & DéveloppementsEnvironnements & Développements
Environnements & Développements
 
Formation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPFFormation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPF
 
Presentation mug-data mapper
Presentation mug-data mapperPresentation mug-data mapper
Presentation mug-data mapper
 
Azure Camp 9 Décembre - slides session développeurs webmedia
Azure Camp 9 Décembre - slides session développeurs webmediaAzure Camp 9 Décembre - slides session développeurs webmedia
Azure Camp 9 Décembre - slides session développeurs webmedia
 

Mehr von Slimen Belhaj Ali (19)

Solution générique pour la résolution des problèmes statiques de tournées de ...
Solution générique pour la résolution des problèmes statiques de tournées de ...Solution générique pour la résolution des problèmes statiques de tournées de ...
Solution générique pour la résolution des problèmes statiques de tournées de ...
 
BPMN,jBPM,BPEL
BPMN,jBPM,BPELBPMN,jBPM,BPEL
BPMN,jBPM,BPEL
 
Websphere
WebsphereWebsphere
Websphere
 
Sécurisation des services WCF avec WS-Security
Sécurisation des services WCF avec WS-SecuritySécurisation des services WCF avec WS-Security
Sécurisation des services WCF avec WS-Security
 
ERP Universitaire
ERP UniversitaireERP Universitaire
ERP Universitaire
 
JSF 2.0
JSF 2.0JSF 2.0
JSF 2.0
 
Tutorial
TutorialTutorial
Tutorial
 
Spring security
Spring securitySpring security
Spring security
 
Spring mvc 3.0 web flow
Spring mvc 3.0 web flowSpring mvc 3.0 web flow
Spring mvc 3.0 web flow
 
Share point 2010
Share point 2010Share point 2010
Share point 2010
 
TFS
TFSTFS
TFS
 
objective C
objective Cobjective C
objective C
 
Android
AndroidAndroid
Android
 
Hibernate 3
Hibernate 3Hibernate 3
Hibernate 3
 
WPF MVVM
WPF MVVMWPF MVVM
WPF MVVM
 
Jboss Seam
Jboss SeamJboss Seam
Jboss Seam
 
Google appengine&guice
Google appengine&guiceGoogle appengine&guice
Google appengine&guice
 
Sonar-Hodson-Maven
Sonar-Hodson-MavenSonar-Hodson-Maven
Sonar-Hodson-Maven
 
Administration glassfish 3
Administration glassfish 3Administration glassfish 3
Administration glassfish 3
 

JasperReport

  • 1. 1
  • 2. Ensemble de besoins divers : • Besoin d’un outil de Reporting pour les analystes afin de présenter facilement les données chiffrées de l'entreprise et leurs évolutions. • Besoin de fusionner ces données afin de leur associer des modèles de documents déjà élaborés. 2
  • 3. Les objectifs de reporting : • L'extraction sélective des informations à partir des tableurs, des bases ou des Datawarehouses. • Le tri suivant des critères de progression judicieux. • La mise en forme, la plus claire et la plus agréable possible. Le reporting est une technique stratégique qui aide à la prise de décision 3
  • 4. 4
  • 5. jasperReport : Présentation/objectifs/fonctionnalites • IReport • Historique/ nouveautés • Cycle vie d’un rapport/ parties d’un rapport • Sources de données • Expressions /paramètres/variables • Langage de scripts • Représentation des données • SubReports • Dépendance • Subreports • Business intelligence suite • Conclusion 5
  • 6. • Librairie open source de reporting, qui permet de fournir des données sur l'écran, à l'imprimante, ou en différents formats de fichier. • Entièrement écrit en Java ,il peut s'utiliser dans diverses applications comme : -Une application Java -Une application Web J2EE Ou comme un outil indépendant 6
  • 7. Son objectif principal est d'aider à créer les rapports et des documents prêts à être imprimés de manière simple et flexible. Il permet la représentation de données sous forme textuelle, mais aussi la génération de graphiques divers (sous forme de barre, courbe, nuage de point). 7
  • 8. JasperReports offre les fonctionnalités suivantes : • Une structure de page flexible • Possibilité de présenter les données de manière variée (textuel, graphique) • Export dans une grande variété de formats • Possibilité de fournir les données sous différentes formes (paramètres, sources de données) • Gestion de sous rapports 8
  • 9. • iReport est un open source report designer pour JasperReports. • C’est un outil WYSIWYG pour tous les éléments graphiques. • iReport assiste l’utilisateur durant toutes les phases de l'élaboration du rapport: la conception jrxml, compilation Jasper, l'exécution du rapport, et à l'exportation ou la visualisation de documents. 9
  • 10. • Juin 2001: -Teodor Danciu commencé à travailler sur JasperReports • 3 Novembre 2001: -publication de JasperReports 0.1.5 -Jaspersoft (Panscopic) fondée par Al Campa et Raj Bhargava. • 2004: - Panscopic équipe avec Teodor Danciu, a acquis la propriété intellectuelle de JasperReports • 21 Juillet 2005: -Version1.0 10
  • 11. • JasperReport 3.1.2(06 novembre 2008) -Compilateur basé sur la bibliothèque de soutient Rhino JavaScript comme la langue d'expression du rapport • JasperReport 3.5.1(02 juin 2009) -Personnalisation de l’exportateur PDF en utilisant des éléments génériques. • JasperReport 3.7.1(08 février 2010) -Nouveaux exportateurs: HTML, XHTML • JasperReport 3.7.2(12 avril 2010) -Nouveau exportateur PPTX(PPT 2007) • JasperReport 3.7.5(22 September 2010 ) -trie des ensembles de données en utilisant des variables -Le support de Custonizer pour Spidercharts 11
  • 12. • JasperReport 3.7.6(28 Septembre 2010) -Amélioration de l’exportateur XLSX -Correction dans l’exportateur XLS • iReport 3.7.6(01 Novembre 2010) -Mise à jour de SQL Designer -Support Complet de JasperReport 3.7.6 -Ajout de support JRDataSourceProvider pour l’utiliser avec le Wizard. 12
  • 13. Phase de design Phase d’exécution Phase d’export génère compile fill JRXMLLoader JRCompiler JasperFillManager JasperExportManager JasperCompileManager 13
  • 14. 14
  • 15. Zone qui n’est affichée qu’une seule fois Apparaît à la fin de chaque colonne. en haut de la 1eré page. N’est pas redimensionnable au moment Contient le nom du rapport, logo de de l'exécution l'entreprise et d'autres informations Placée générales. de la section « Title » au dessous Son contenu est affiché en haut de chaque Apparaît sur chaque page où il Partie où on définit les entête des Permet d’insérerune tête de page. page du rapport. ya des champs concernants colonnes d’un tableau, elles seront le calcul total, moyen, ou quel que soit répétées sur chaque page du rapport ou ce qu’on veut ajouter à la fin du rapport le tableau est présent. Section principale du rapport :« Corps du rapport » Contient les données que l’on affiche issues de la requête SQL. Cette zone est reproduite pour chaque ligne du résultat renvoyé par la requête SQL. 15
  • 16. N'est affiché qu'une seule fois en bas de la dernière page. Arrière plan de la page ou on peut mettre un logo ou autre aussi des éléments dynamiques. 16
  • 17. Paramètres d’entrée du rapport Fichier CSV Accès JDBC-Bases de données: Oracle, Mysql…. Collection de java Bean Fichier XML 17
  • 18. 18
  • 19. Pour l’affichage des données calculées, non statiques dans un rapport. On les appellent aussi des champs ou Fiels Ce sont les résultats d’une requête SQL ou d’une autre source de donnée. Elles changent dynamiquement tant que JasperReport lit les enregistrements . Syntaxe: $F{NOMDUCHAMP} 19
  • 20. Il existe deux types de paramètres : • les paramètres intégrés : obligatoires pour le bon fonctionnement du rapport. Comme le paramètre intégré de connexion à la base de données •les paramètres utilisateurs : facultatifs et définites par le programmeur. Exemple : on désire afficher les utilisauteurs dont le pays= « Tunisie », « Tunisie » sera entré comme paramètre, la requête SQL ressemblera à : SELECT * FROM T_user WHERE pays=$P{PAYS_USER} Syntaxe: $P{NOMDUPARAMETRE} 20
  • 21. Les variables permettent de • Simplifier les expressions dans un rapport en éliminant leurs redondances • Faire des calculs complexes à faire avec les expressions (somme, moyenne, maximum, etc.) Les variables sont des valeurs qui n'existent que dans le rapport.: • Les variables intégrées: sont par exemple le numéro de la page,ou le nombre d'enregistrement par page . • Les variables utilisateurs : simples ou définies comme la sommes des valeurs de plusieurs champs . Syntaxe: $V{NOMDELAVARIABLE} 21
  • 22. 22
  • 23. IReport supporte l’utilisation de langages de scripts : • JavaScript: langage de scripts principalement utilisé dans les pages web interactives mais aussi coté serveur . • Groovy :C'est un langage orienté objet pour la JVM Java qui s'inspire entre autres de Python, Java, Ruby et Smalltalk. Ce langage possède une syntaxe proche de Java et génère directement du bytecode. 23
  • 24. • Représentation des données sous forme : • Textuelle • Graphique Ces représentations permettent d’afficher des données dynamiques, qui ne seront pas passées directement au rapport mais calculées à partir des données fournies. 24
  • 25. La palette de représentation graphique proposée est large, elle comporte : • les barres (2D, 3D, en relief, empilées 2D, empilées 3D) • Les courbes • Les nuages de points • minimum/maximum, cadran, thermomètre. • Etc. 25
  • 26. Tout rapport peut devenir le sous rapport d’un autre. Cette technique propose deux avantages principaux : • Simplification de la réalisation d’un rapport en découpant la complexité . • Possibilité de réutilisation dans plusieurs rapports différents d’un même sous rapport présentant un affichage fréquent. 26
  • 27. un rapport enfant, a sa propre requête SQL pour extraire les enregistrements de la base de données. 27
  • 28. 28
  • 29. JasperReports s’appuie sur plusieurs librairies Java open source pour implémenter ses fonctionnalités: • iText : pour la génération de PDF • JFreeChart : pour la génération de diagrammes et graphiques • Jakarta POI : pour la génération de documents Microsoft Office • JAXP : pour le parsing et la transformation de XML 29
  • 30. JasperReports propose également pour la réalisation de rapports un lot de fonctions avancées telles que : • Gestion de l’internationalisation • Scriptlets • Tableaux croisés • Ancres et liens dans les documents • Gestion des marques pages dans les fichiers PDF • Gestion des formules dans les documents Excel • Gestion avancée de la mémoire pour les très gros rapports (Virtualizer) 30
  • 31. 31
  • 32. • Les avantages de JasperReports : -Des fonctionnalités avancées, notamment pour la représentation de graphique, -l’outil iReport offre des avancés importantes en matière de productivité pour des rapports complexes. • Les inconvénients de JasperReports: -Certaines limitations telqu’une seule datasource/connexion par rapport. - Documentation officielle limtée, ou payante, ce qui implique un temps de prise en main de l’outil un peu long de prime abord. 32
  • 33. 33

Hinweis der Redaktion

  1. JasperReports - JasperReports est une vaste bibliothèque de classes Java et des API qui vous permettent de créer par programme des dessins rapport, les faire fonctionner des sources de données, et à rendre leur sortie en HTML, PDF, Excel et autres formats de sortie. Vous pouvez intégrer JasperReports dans vos applications Java.Si vous utilisez le moteur de JasperReports pour générer desJasperReports est un puissant outil de reporting open source qui a la capacité pour fournir des contenus sur l'écran, à l'imprimante, ou en PDF, HTML, XLS, RTF, ODT, CSV, TXT et XML. JasperReports est entièrement écrit en Java et peut être utilisé dans une variété de Java applications pour générer du contenu dynamique. Son objectif principal est d'aider à créer la page orienté, des documents prêts à imprimer de manière simple et flexible.JasperReports est incorporé dans tous types d'applications, allant de celles qui permettent l'interactivité utilisateur de pixel près formulaires imprimés, factures, et d'autres complexes rapports opérationnels. JasperReports est une bibliothèque que vous intégrez dans une autre application. «Installation» signifie simplement JasperReports y compris les JasperReport "jar" fichier dans le classpath de votre application avec les autres fichiers JAR requis.
  2. iReport est gratuit, open source report designer pour JasperReports.Créer sophistiquées mises en page très contenant des diagrammes, des images, des sous-tableaux à double entrée et bien plus encore. Accès à vos données via JDBC, TableModels, JavaBeans, XML, Hibernate, CSV, et les sources personnalisé. Puis, publiez vos rapports au format PDF, RTF, XML, XLS, CSV, HTML, XHTML, texte, DOCX, ou OpenOfficeIReport est un logiciel open source, écrit entièrement en Java, permettant, par l’intermédiaire d’une interfacegraphique riche, de créer des modèles de rapports au format jrxml de JasperReports. L’utilisation de ce logicielpermet de s’abstraire de la complexité de la syntaxe XML de JasperReports, et de gagner du temps lors dudéveloppement de modèles de rapport.IReport permet une prise en main complète de JasperReports via son interface graphique, par son supportcomplet des tags XML de la librairie, une interface WYSIWYG pour tous les éléments graphiques, un éditeurd’expressions, la gestion des sous rapports.Un module intégré d’exportation, associé à un support des connexions JDBC et des datasourcesJasperReports, permet également de tester le rendu des rapports directement depuis le logiciel.IReport apporte à JasperReports un gain de productivité non négligeable, une fois l’outil pris en main, parrapport à d’autres solutions de reporting pour Java non outillées.IReport est néanmoins l’éditeur officiel de JasperReports, réalisé et supporté par la même équipe que la librairiede reporting (iReport était à la base un projet indépendant, avant de voir sa popularité reconnaître parJasperSoft et l’auteur du logiciel embauché par la société).
  3. *Report Designer*report InsperctorElements paletteFormating ToolsPropertysheetStyles libraryReportProblemsLe Concepteur de rapports est l'endroit où vous concevoir visuellement le rapport en faisant glisser, le positionnement, l'alignement et le redimensionnement des éléments du rapport.L' inspecteur rapport montre la structure complète du rapport, qui est composé de nombreux objets (tels que les champs, les paramètres et variables), les bandes (qui sont des sections du document) et des éléments (tels que les champs de texte, des images ou des graphiques).La palette des éléments contient les éléments qui peuvent être glissés à l'intérieur d'une bande pour afficher vos données.La feuille de propriétés est utilisé pour définir les propriétés du composant sélectionné actuellement dans le rapport (par exemple un champ, élément, bande, groupe, ou d'autres).Ci-dessus le concepteur de rapport, il ya le sélecteur de source de données, qui montre le lien actif qui sera utilisé pour exécuter le rapportLa barre d'outils du Concepteur de rapports a trois boutons pour passer facilement de la conception en mode de prévisualisation. Lorsque vous cliquez sur le bouton d'aperçu, iReport exécute le rapport en utilisant la connexion active et affiche le résultat en utilisant un visualiseur interne. iReport peut également être configuré pour exporter le document dans un format particulier et ouvrir la visionneuse appropriée (par exemple un navigateur ou une visionneuse PDF).
  4. Dès éléments graphiques de bases peuvent également
  5. Une autre fonctionnalité de JasperReports est la possibilité d’utiliser des sous rapports, et de créer un rapport àpartir de plusieurs autre r Simplification de la réalisation d’un rapport en découpant la complexité (plusieurs petits rapports simples pour faire un rapport complexe) Possibilité de réutilisation dans plusieurs rapports différents d’un même sous rapport présentant un affichage fréquent (cet affichage n’a donc besoin de n’être développé qu’une fois)apports.
  6. (portions de code Java pouvant être exécuté lors du renseignement du rapport)
  7. Les avantages de JasperReports : -Des fonctionnalités avancées, notamment pour la représentation de graphique, -l’outil iReport qui une fois pris en main offre des avancés importantes en matière de productivité pour des rapports complexes.Les inconvénients de JasperReports: Certaines limitations (une seule datasource/connexion par rapport),mais le concept de sous rapport apporte une réponse à cette limitation). documentation officielle, ou alors celle-ci est payante, ce qui implique un temps de prise en main de l’outil un peu long de prime abord. Mais JasperReports étant largement utilisé dans le monde Java, de nombreux