JasperReports: различия между версиями
[отпатрулированная версия] | [отпатрулированная версия] |
м update |
→Графические дизайнеры для JasperReports: Бесплатна trial-версия на 30 дней |
||
Строка 67: | Строка 67: | ||
* [http://www.jasperassistant.com/ JasperAssistant] — графический редактор отчётов для JasperReports, работающий в среде Eclipse; коммерческая лицензия |
* [http://www.jasperassistant.com/ JasperAssistant] — графический редактор отчётов для JasperReports, работающий в среде Eclipse; коммерческая лицензия |
||
* [http://plazma.sourceforge.net/frameaction.php?lng=ru&page=studio Plazma Report Designer] |
* [http://plazma.sourceforge.net/frameaction.php?lng=ru&page=studio Plazma Report Designer] |
||
* [http://jasperwave.com JasperWave Report Designer] — |
* [http://jasperwave.com JasperWave Report Designer] — дизайнер шаблонов для JasperReports, построенный на Eclipse платформе (поставляется как в виде набора плагинов для Eclipse IDE, так и в виде отдельного приложения). |
||
== Ссылки == |
== Ссылки == |
Версия от 12:18, 3 июня 2015
JasperReports | |||
---|---|---|---|
Тип | Java-библиотека | ||
Разработчик | Jaspersoft | ||
Написана на | Java[1] | ||
Операционная система | Кроссплатформенное ПО | ||
Первый выпуск | 2002 | ||
Аппаратная платформа | Java Virtual Machine | ||
Последняя версия | 6.0.0 (10 февраля 2014 года) | ||
Репозиторий | github.com/TIBCOSoftware… | ||
| |||
| |||
Лицензия | GNU Lesser General Public License | ||
Сайт | jasperforge.org/projects… | ||
Медиафайлы на Викискладе |
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, так и в виде отдельного приложения).