- JasperReports
-
JasperReports Тип Java-библиотека
Последняя версия Лицензия GNU Lesser General Public License
Сайт JasperReports — это Java-библиотека для создания отчётов. На основе XML-шаблонов отчётов генерируются готовые для печати документы, консолидирующие данные из различных источников, в том числе JDBC. Отчёты могут выводиться на экран, принтер, либо в форматы PDF, RTF, HTML, XLS, CSV и XML. Основной частью шаблона является SQL-запрос, который указывает какие данные необходимо выбрать из базы данных для генерации отчёта. В XML-шаблоне допустимо применение стилей и выражений (для проверки или вычисления результата). Также возможна группировка данных по требуемому полю.
Содержание
Возможности
- Поддержка различных источников данных: JDBC, CALS Table Models, XML, CSV, JavaBeans, EJBQL, Hibernate, а также возможность использования собственного источника данных на основе интерфейса JRDataSource
- Использование так называемых скриплетов (scriptlets) на Java, которые могут быть вызваны до или после определённых этапов генерации отчётов, таких как Отчёт (Report), Страница (Page), Колонка (Column) и Группа (Group)
- Использование динамических языков JavaScript и Groovy при реализации логики отчета.
- Реализация диаграмм (charts) на основе библиотеки JFreeChart.
- Реализация подотчётов (subreports) с неограниченной глубиной вложенности.
- Реализация кросстаблиц (crosstabs).
JRXML шаблон
Дизайн JasperReports описывается в специальном XML файле шаблона, который называется JRXML. Данный шаблон можно создать в ручном режиме (текстовый редактор), или используя различные графические дизайнеры для JasperReports.
Простейший пример шаблона:
<?xml version="1.0" encoding="windows-1251"?> <!DOCTYPE jasperReport PUBLIC "-//JasperReports//DTD Report Design//EN" "http://jasperreports.sourceforge.net/dtds/jasperreport.dtd"> <jasperReport name="ReportName"> <style name="Arial_Normal" isDefault="true" fontName="Arial" fontSize="12" pdfFontName="c:\tahoma.ttf" pdfEncoding="Cp1251" isPdfEmbedded="false" /> <field name="name" class="java.lang.String" /> <detail> <band height="20"> <textField> <reportElement x="0" y="0" width="50" height="20" /> <textFieldExpression class="java.lang.String"> <![CDATA[$F{name}]]> </textFieldExpression> </textField> </band> </detail> </jasperReport>
Тег
jasperReport
- указывает на начало отчета. Для того, чтобы использовать поля, сначала их необходимо описать.
<field name="name" class="java.lang.String" />
В описание входит имя поля name и его java-class class. После описания поля, к нему можно обращаться следующим образом:
$F{name}
Директива $F{…} указывает на использование именно поля. Также возможно применение переменных $V{…} и параметров $P{…}.
Графические дизайнеры для JasperReports
- iReport — графический редактор отчётов для работы в среде NetBeans IDE; создан той же организацией, которая создала JasperReports; поставляется также в виде отдельного приложения
- Jaspersoft Studio — является портом iReport под Eclipse; создан той же организацией, которая создала JasperReports
- DynamicReports — Open source Java API reporting library based on JasperReports
- JasperAssistant — графический редактор отчётов для JasperReports, работающий в среде Eclipse; коммерческая лицензия
- Plazma Report Designer
- JasperWave Report Designer — бесплатный дизайнер шаблонов для JasperReports, построенный на Eclipse платформе (поставляется как в виде набора плагинов для Eclipse IDE, так и в виде отдельного приложения).
Ссылки
Категории:- Программное обеспечение по алфавиту
- Java
- Свободные библиотеки программ
Wikimedia Foundation. 2010.