- JasperReports
-
JasperReports Maintainer JasperSoft Aktuelle Version 4.1.2
(12. September 2011)Betriebssystem Plattformunabhängig Programmiersprache Java Kategorie Berichtswesen / Business-Intelligence Lizenz LGPL (Freie Software) Deutschsprachig Ja www.jasperforge.org/jasperreports JasperReports ist ein Open Source Java Berichts-Werkzeug, entwickelt von JasperSoft, mit dem man aus Java-Programmen Berichte als PDF, HTML, Microsoft Word und Microsoft Excel, TXT, RTF, ODT, CSV und XML exportieren, auf dem Bildschirm anzeigen oder drucken kann.
Inhaltsverzeichnis
Funktionalität
Mit JasperReports lassen sich in Java-Programmen Berichte mit Daten aus ein oder mehreren Datenquellen erstellen.[1] Diese Quellen schließen die folgenden ein: Datenbanken über JDBC oder Hibernate, Enterprise Java Beans über EJBQL, JavaBeans, XML- und CSV-Dateien. Weitere Datenquellen können dem JasperReports Framework über sogenannte JRQueryExecuter hinzugefügt werden. So existiert z.B. eine Erweiterung, die Oracle PL/SQL Stored Procedures als Datenquelle hinzufügt.[2]
JasperReports' Berichte können die Daten in textueller tabellarischer Form darstellen, aber auch Diagramme daraus generieren. Diese mittels JFreeChart generierten Diagramme unterstützen diverse Diagrammlayouts wie z.B. Kreis-, Balken-, Säulen- oder Blasendiagramme.
Mit sogenannten Scriptlets, die in Java oder Groovy ausgeführt sein können, kann die Berichtsausführung um eigene Funktionen erweitert werden. Zusätzlich können diese Scriptlets auf Ereignisse aus der JasperEngine reagieren. Dabei kann auf Seiten-, Gruppen- oder Zeilenwechsel reagiert werden.
Geschichte
Die Entwicklung von JasperReports wurde durch Teodor Danciu im Juni 2001 gestartet, das Sourceforge Projekt wurde im September desselben Jahres gegründet[3] und die erste Version (0.1.5) am 3. November 2001 veröffentlicht[4], die Version 1.0 am 21. Juli 2005.[5].
Die Firma JasperSoft entstand aus der Firma Panscopic, welche von Al Campa (CEO) und Raj Bhargava (VP) im Jahre 2001 gegründet wurde. 2004 erwarb Panscopic alle Rechte an JasperReports und nannte sich in JasperSoft um. [6]. JasperSoft vertreibt kommerzielle Software rund um JasperReports und vertreibt auch JasperReports an Kunden, welche es mit einem nicht Open-Source Produkt verbinden wollen.
JRXML
Die Berichte werden in einem XML-Format namens JRXML gespeichert und müssen vor der Ausführung in .jasper-Dateien kompiliert werden. Der Bericht selber enthält keine Datenquellen, diese werden der ReportEngine zur Laufzeit übergeben. Aber die Abfragemethode, z.B. SQL-Statements werden mit abgespeichert. Zur Laufzeit wird dann die Abfragemethode auf die übergebene Datenquelle angewandt, das Ergebnis gerendert und in die gewünschte Ansicht gebracht.
Werkzeuge
Es gibt verschiedene Programme, die den Umgang mit den Berichten erleichtern:
- JasperAssistant
- ist ein proprietäres Eclipse-Plugin von INFOLOGIC SA, mit dem man per grafischer Oberfläche die Berichte bearbeiten kann.
- DynamicReports
- Open source Java API reporting library based on JasperReports
- iReport
- ist eine von JasperSoft unter der GPL veröffentlichte Software zum Bearbeiten von Berichten mit grafischer Oberfläche. Das Programm ist auch als Eclipse-Plugin und als Plugin für NetBeans vorhanden.
- JasperServer
- ist eine von JasperSoft entwickelte Serversoftware unter der GPL, die Berichte, Datenquellen und andere Dateien verwaltet.
- diverse Eclipse-Plugins zum Erstellen von Berichten direkt aus der Entwicklungsumgebung
- SWTJasperViewer
- JasperAssistant[7] Auf SWTJasperViewer aufsetzendes Plugin für Eclipse[8]
- Plazma Report Designer
- JasperWave Report Designer - Eclipse basierter Editor für JasperReports
- JasperTags
- Eine JSP Tag Library für den einfachen Einsatz von JasperReports in Webapplikationen
JasperReports Refactorings
Der Sourcecode von JasperReports war Inhalt einer Reihe wissenschaftlicher Studien zu Code Qualität und Refactoring:
- Rajesh Vasa, Jean-Guy Schneider: Evolution of Cyclomatic Complexity in Object Oriented Software. In: 7th workshop on the quantitative approaches in object-oriented software engineering (QAOOSE'2003). 2003.
- Deepak Advani, Youssef Hassoun, Steve Counsell (2005): Heurac: A heuristic-based tool for extracting refactoring data from open-source software versions (PDF). Abgerufen am 11. Januar 2007.
- Emerson Murphy-Hill (2005): Improving Refactoring with Alternate Program Views (PDF). Abgerufen am 11. Januar 2007.
- Vasa, R.: Detecting structural changes in object oriented software systems. In: Proceedings of the 2005 International Symposium on Empirical Software Engineering (ISESE 2005). 17-18 November 2005, S. 463. ISBN 0-7803-9507-7. doi:10.1109/ISESE.2005.1541855.
- Deepak Advani, Youssef Hassoun, Steve Counsell: Extracting refactoring trends from open-source software and a possible solution to the 'related refactoring' conundrum. In: Proceedings of the 2006 ACM symposium on Applied computing. 2006, S. 463. ISBN 1-59593-108-2 (New York, USA: ACM Press). doi:10.1145/1141277.1141685.
- S. Counsell, Y. Hassoun, G. Loizou and R. Najjar: Common Refactorings, a Dependency Graph and some Code Smells: An Empirical Study of Java OSS. In: Proceedings of the 2006 ACM/IEEE international symposium on International symposium on empirical software engineering. 2006, S. 463. ISBN 1-59593-218-6 (New York, USA: ACM Press). doi:10.1145/1159733.1159777.
Siehe auch
Weblinks
- offizielle Webpräsenz
- DynamicReports : Open source Java API reporting library based on JasperReports
Einzelnachweise
- ↑ Erik Swenson (20. September 2002): Reports made easy with JasperReports. JavaWorld.com. Abgerufen am 11. Januar 2007.
- ↑ OracleStoredProcedures sub-project
- ↑ An Interview with Teodor Danciu of JasperReports. RootPrompt (16. Februar 2005). Abgerufen am 5. Januar 2011.
- ↑ freshmeat.net: Project details for JasperReports:Comment
- ↑ JasperReports 1.0 released. theserverside. Abgerufen am 5. Januar 2011.
- ↑ Can an open source project get acquired? One just did.. zdnet blogs (25. April 2005). Abgerufen am 5. Januar 2011.
- ↑ Anadi Misra (31. Mai 2006): Generating reports with Jasper Reports. Abgerufen am 11. Januar 2007.
- ↑ JasperAssistant: Plugin details. Eclipse-Plugins.info (12. Dezember 2006). Abgerufen am 11. Januar 2007.
Wikimedia Foundation.