JasperReports

Материал из Seo Wiki - Поисковая Оптимизация и Программирование
Перейти к навигацииПерейти к поиску
JasperReports
Тип Java-библиотека
Версия 3.7.0 (9 декабря, 2009 г.)
Лицензия GNU Lesser General Public License
Сайт jasperforge.org

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

Ссылки


de:JasperReports en:JasperReports es:JasperReports fr:JasperReports nl:JasperReports uk:JasperReports zh:JasperReports

Если вам нравится SbUP.com Сайт, вы можете поддержать его - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 и ещё....