Учебники

66) Учебник по JasperReports

Что такое Jasper Reports?

JasperReports — это механизм отчетов Java с открытым исходным кодом. Эта библиотека классов Java предлагает возможности отчетности для вашего приложения. Этот инструмент создания отчетов помогает доставлять богатый контент на экран, на принтер или в файлы HTML, PDF, XLS, RTF, CSV, XML, ODT и TXT.

Из этого урока Jasper Reports вы узнаете:

Jasper Reports — настройка среды

Шаг 1) Нажмите «Загрузить сейчас», чтобы установить выпуск сообщества Jasper Reports .

Шаг 2) Выберите Jaspersoft Studio CE

Шаг 3) Нажмите на кнопку Скачать, чтобы открыть файл загрузки TIB_js-studiocomm_6.9.0_windows_x86_64.exe.TIB_js-studiocomm_6.9.0_windows_x86_64.exe

Шаг 4) Появится следующий экран, нажмите кнопку «Я согласен».

Шаг 5) В следующем диалоговом окне нажмите кнопку «Далее»

Шаг 6) Вы увидите прогресс на следующем экране.

Шаг 7) На следующем экране нажмите кнопку Готово.

Шаг 8) В вашем окне появится следующий экран.

Шаг 9) Нажмите «Начать» .

Шаг 10) Появится следующий экран, вы можете начать работать со студией Jasper Reports.

Зачем использовать Jasper Reports?

Вот много причин для использования инструмента отчетов Jasper:

  • Он предлагает производительность генерации отчетов и доставки пользователям.
  • Это поможет вам представить ваши данные в текстовом или графическом формате.
  • Это автономный и встроенный сервер отчетов для составления и выполнения отчетов.
  • Это позволяет управлять доступом на основе ролей ко всем отчетам в хранилище.
  • Основа безопасности Spring для интеграции с внутренними системами аутентификации
  • Он предлагает безопасный, график и автоматическую доставку интерактивных отчетов.
  • Вы можете встраивать отчеты в приложение Java или не Java.
  • Различные форматы отчетов могут быть экспортированы.
  • Разработчики могут предоставлять данные несколькими способами.
  • Он может генерировать водяные знаки, которые накладываются на основное изображение.
  • Он предлагает полный набор SOAP, REST и веб-сервисов.
  • Это позволяет использовать данные одного отчета из нескольких источников данных.

Жизненный цикл JasperReports

Ниже приводится общий поток жизненного цикла отчетов Jasper:

Разработка отчета:

Это будет первый шаг, на котором мы создадим файл JRXML. Это файл представляет собой простой XML-документ, который определяет макет отчета. Вы можете разработать этот файл с помощью любого текстового редактора или дизайнера отчетов.

Однако, если вы используете дизайнер отчетов, мы можем визуализировать макет отчета, и реальная структура JRXML должна игнорироваться.

Составление отчета:

На этом этапе жизненного цикла компилируется JRXML, который создается на первом этапе, и генерируется двоичный объект, называемый файлом Jasper (файл с jasper xtn).

Эта компиляция сделана, чтобы получить лучшую производительность во время выполнения. Эти сгенерированные файлы Jasper должны быть отправлены вместе с вашим приложением для запуска отчетов.

Выполнение отчета:

На этом этапе данные из приложения собираются и заполняются в формате скомпилированного отчета. Существует класс с именем net.sf.jasperreports.engine.JasperFillManager, который предлагает функции для заполнения данных в отчетах.

Вывод будет сохранен в файле печати Jasper (файл с jprint xtn), который можно использовать для печати или экспорта отчета.

Экспорт отчета в нужный формат:

На этом последнем этапе вам необходимо экспортировать файл печати Jasper, созданный ранее, в любой формат, используя класс JasperExportManager. Поскольку Jasper предлагает несколько форматов экспорта, мы можем использовать один и тот же вход для создания различных представлений данных.

Особенности Jasper Reports

Вот, Важные Особенности инструмента Отчетов Джаспера:

  • Предлагает гибкий макет отчета.
  • Разработчики могут предоставлять данные несколькими способами.
  • Это позволяет принимать данные из нескольких источников данных.
  • Водяные знаки также могут быть применены.
  • Несколько источников данных могут быть использованы для передачи данных.
  • Вы можете создавать вложенные отчеты
  • Может генерировать вложенные отчеты.
  • Это поможет вам экспортировать отчеты в различные форматы, такие как PDF, HTML, RTF, файлы Microsoft Excel.
  • Движок позволяет определениям отчетов включать диаграммы.

Джаспер против Пентахо

Вот основные различия между Джаспером и Пентахо:

параметры Джаспер Pentaho
Отчеты Джаспер использует отчет для разработки отчетов. Он использовал Pentaho Report Designer.
Поддержка ETL Jaspersoft использует версию Talend Open Studio для целей ETL. В качестве инструмента ETL по умолчанию используется Pentaho Data Integrator.
Приборная панель Функциональность панели мониторинга присутствует только в редакторе Enterprise Jaspersoft. Pentaho предлагает широкий спектр функций в своих панелях.
Мобильная бизнес-аналитика У Jaspersoft также лучшая мобильная BI. Используемое Pentaho необходимо полагаться на сторонний инструмент для улучшения мобильного BI.
Документация Лучший маркетинг, сайты и документация. Поддержка документации плохая.
Лучшая особенность Проще исследовать и найти то, что вам нужно. Предложения Data Mining и iPhone интеграции
Платная версия Платная версия предлагает такие функции, как специальный запрос web Ul, создание панели мониторинга web Ul. Предлагает такие функции, как интеграция LDAP, SSO, аудит и т. Д.

Пример создания шаблона отчета

Файл шаблона отчета, используемый в JasperReports, представляет собой простой файл XML с расширением jrxml. Этот файл содержит тег в качестве корневого элемента. Платформа JasperReports может обрабатывать различные типы источников данных.

Шаблон отчета разработан и создан с использованием следующих двух шагов —

Шаг 1) Создание файла JRXML в Jaspersoft Studio.

  1. Перейти к варианту файла.
  2. Выберите Новое подменю
  3. Нажмите на опцию Jasper Report.

Шаг 2) Выбор нужного шаблона.

  1. Выберите свой шаблон, например, вишня.
  2. Нажмите на кнопку «Далее».

Шаг 3) Выбор родительской папки.

  1. Выберите папку MyReports.
  2. Введите имя файла, например, «Cherry Report».
  3. Нажмите на кнопку «Далее».

Шаг 4) В данном Источнике окно , нажмите на кнопку «Создать» для создания нового адаптера данных.

Шаг 5) Выбор адаптера данных.

  1. Выберите адаптер данных из списка. Например, «Коллекция JavaBeans».
  2. Нажмите на кнопку «Далее».

Шаг 6) Ввод данных адаптера данных и выбор заводского класса.

  1. Введите имя для вашего адаптера.
  2. Выберите заводской класс, нажав кнопку «…».

Шаг 7) Ввод префикса или шаблона.

  1. Введите префикс имени или шаблон.
  2. Нажмите соответствующие элементы.
  3. Нажмите на кнопку «ОК».

Шаг 8) Определение фабричного класса и добавление пути к файлам jar.

  1. Введите имя статического метода в фабричном классе. В этом примере это createBeanCollection.
  2. Если в вашем определении JavaBeans есть описания полей, и вы хотели бы использовать их в качестве имен в Jaspersoft Studio, установите флажок использовать описание поля.
  3. Добавьте путь к вашим файлам jar.
  4. Нажмите на кнопку «Готово».

Шаг 9) Нажмите на кнопку «Далее».

Шаг 10) Поздравляем! Вы успешно добавили всю необходимую информацию для создания отчета. Нажмите на кнопку «Готово».

Отчет будет создан, как показано на экране ниже.

Приведенный выше файл требует компиляции в двоичный формат JasperReport, который называется файлом jasper.

Интерфейс net.sf.jasperreports.engine.design.JRCompiler, который является частью библиотеки JasperReports, играет важную роль в компиляции этого файла шаблона отчета.

Реализация этого интерфейса может быть написана на Java, JavaScript, Groovy или любом другом языке сценариев.

Вы можете скомпилировать файл JRXML следующими двумя способами:

  • Программная компиляция.
  • Компиляция с использованием задачи Apache ANT.

Понимание различных групп отчетов

Ниже приводится стандартный формат отчета, принятый большинством инструментов для создания коммерческих отчетов.

  • заглавие
  • Заголовок страницы
  • Заголовок столбца
  • подробность
  • Нижний колонтитул
  • Нижний колонтитул страницы
  • Резюме

Давайте подробно рассмотрим каждую полосу отчетности:

Заглавие:

Эта полоса показана в начале отчета. Его можно использовать как первую страницу, установив атрибутisTitleNewPage="true."

Заголовок страницы:

Группа отчетов заголовка страницы показана в начале каждой страницы. Она исключает первую страницу, если используется заголовок, и последнюю страницу, если этот сводный диапазон используется с настройкой.isSummaryWithPageHeaderAndFooter="false.".

Заголовок столбца:

Заголовки столбцов появляются перед полосой сведений на каждой странице.

Деталь:

Подробный раздел повторяется для каждой записи в предоставленном источнике данных. Это также позволило иметь несколько деталей (1, 2 и т. Д.)

Нижний колонтитул

Этот раздел отображается под полосой подробностей на каждой странице, где присутствует полоса подробностей. Значением по умолчанию является конец страницы, но его можно переключить на последнюю полосу подробностей, установив атрибутisFloatColumnFooter=" true."

Нижний колонтитул страницы:

Этот раздел будет отображаться в конце каждой страницы, за исключением полосы обзора, полосы заголовка и последней полосы без сводки.

Нижний колонтитул последней страницы:

Этот раздел появляется на предыдущей странице (если не указана сводная полоса) вместо обычной страницы Нижний колонтитул.

Резюме:

Сводный раздел отображается только в конце отчета на новой странице. когда isSummaryNewPage="true"установлен и с верхним и нижним колонтитулом страницыisSummaryWithPageHeaderAndFooter="true".

Заголовок группы:

Этот раздел появляется только в том случае, если он определен каждый раз, когда выражение группы изменяется перед полосой подробностей.

Нижний колонтитул группы:

Этот раздел отображается только в том случае, если группа определяется каждый раз перед изменением выражения группы после полосы подробностей.

Фон:

Он отображается на всех страницах в качестве фона для всех остальных полос отчетности.

Нет данных:

Эта полоса появится, когда источник данных не был передан, или источник данных пуст и когда установлен параметр NoNataDype = «NoDataSection».

Проблемы, возникающие при создании JasperReports

Вот несколько проблем, с которыми вы столкнетесь при создании Jasper Reports:

  • Основные изменения — изменения или улучшения бизнеса. Требуется изменить основную логику отчета.
  • Сложные отчеты — хороший пример.
  • Отчеты диаграмм или визуальные диаграммы, например, график, линия XY, круговая диаграмма, гистограмма, временные ряды и метры.

Недостатки использования Jasper Reports

Вот недостатки / минусы использования Jasper Reports.

  • Как только вы начинаете вносить какие-либо изменения в части пакета и удалять функции, очень трудно вернуться к настройкам пакета по умолчанию.
  • Это слишком жестко, редактирование линий и создание кросс-таблиц является сложной задачей.
  • Некоторые общие задачи, такие как указание промежуточных итогов для сгруппированного отчета, проще в двух других дизайнерах отчетов.
  • Джаспер требует, чтобы вы составляли отчеты перед их запуском. Это означает, что разработчики отчетов должны иметь весь Java SDK.
  • Иногда, когда вы редактируете отчет, он не показывает тот же предварительный просмотр, как он отображается в Интернете.

Резюме:

  • JasperReports — это механизм отчетов Java с открытым исходным кодом. Эта библиотека классов Java предлагает возможности отчетности для вашего приложения.
  • Jasper Reports предлагает производительность создания отчетов и доставки пользователям.
  • Жизненный цикл Jasper Reports включает 1) составление отчетов, 2) составление отчетов, 3) выполнение отчета и 4) экспорт отчета в нужный формат.
  • В Jasper Reports вы можете создавать несколько источников данных для передачи данных.
  • Основное различие между Jasper и Pentaho состоит в том, что отчеты Jasper используют отчет для разработки отчетов, в то время как Pentaho использует конструктор отчетов Pentaho.
  • Файл шаблона отчета, используемый в JasperReports, представляет собой простой файл XML с расширением jrxml.
  • Важными полосами отчетов являются: 1) Заголовок 2) Заголовок страницы 3) Заголовок столбца 4) Сведения 5) Нижний колонтитул столбца 6) Нижний колонтитул страницы и 7) Сводка.
  • Самая большая проблема использования Jasper Reports заключается в том, что вам нужно изменить основную логику отчета, если изменится бизнес-логика.
  • Самым большим недостатком Jasper Reports является то, что когда вы вносите какие-либо изменения в части пакета, трудно вернуться к настройкам пакета по умолчанию.