Лабораторная работа №6: Создание шаблона отчёта "Журнал недостоверных значений" в iReport и размещение его на JasperReport

JasperReports — это Java-библиотека для создания отчётов. На основе XML-шаблонов отчётов генерируются готовые для печати документы, консолидирующие данные из различных источников, в том числе JDBC. Отчёты могут выводиться на экран, принтер либо в форматы PDF, RTF, HTML, XLS, CSV и XML. Основной частью шаблона является SQL-запрос, который указывает какие данные необходимо выбрать из базы данных для генерации отчёта. В XML-шаблоне допустимо применение стилей и выражений (для проверки или вычисления результата). Также возможна группировка данных по требуемому полю.

iReport - программное средство, позволяющее легко и эффективно разрабатывать шаблоны пользовательского интерфейса для JasperReports. Разработка шаблона в iReport осуществляется с помощью визуального редактора.

Для создания базового шаблона необходимо запустить мастер. Мастер создания шаблонов на основе запроса к базе данных создаст шаблон с необходимыми полями. После этого шаблон можно изменять в редакторе, добавлять шапку, дополнительные поля.

После создания базового шаблона запрос к базе данных можно параметризовать. Отличительной особенностью JasperReports от xmlp является возможность параметризации имени таблицы в запросе, поэтому можно создать один отчёт для всех временных уровней.

Параметризованный запрос выглядит следующим образом:

select h.tstamp, s.code, s.name, s.type, s.unit, s.nserv, a_val,h.a_stat,h.a_count 
from svodcode s left outer join $P!{pH} h ON (s.code=h.code) where s.type=$P{pType} 
and s.nserv=$P{pServ} and h.tstamp=$P{pStamp} and h.a_stat='1';

Все параметры, использованные в запросе должны быть добавлены в шаблон. Для параметров может быть задан тип, значение по умолчанию и множество других параметров.

Для поддержки русских символов в PDF документах необходимо указать iReport папку со шрифтами Windows и произвести их настройку в соответствии с рекомендациями. Для полей отчёта, содержащих кириллические символы должен быть установлен соответствующий шрифт и кодировку для PDF документов (CP1251 (Cyrillic)).