SugarTalk - ресурс для администраторов и разработчиков системы SugarCRM.

Работа с отчетами ZuckerReports. Часть 1

Итак, вы  решили, что отчеты ZuckerReports в SugarCRM должны уметь больше, чем выдавать html-файл с почти беспорядочно расположенными данными или отвечать на более сложный запрос, чем  «SELECT * FROM opportunities WHERE amount_usdollar > 1000», а также уметь подать результат в виде чарта или графика. И вроде бы есть такие замечательные примеры, как Activity.jrxml, MeetingPrintout_Users.jrxml и т.д., но они не полностью удовлетворяют ваши потребности :smile: . Тогда смиритесь: графики, чарты, логотипы, разнообразие шрифтов и буйство красок графического конструктора IReport – вся эта прелесть скоро станет для вас любимым и родным. Познакомившись с ним ближе, вы поймете, что IReport не только вкусен, но и полезен.

Начнем с азов.

В конструкторе строится дизайн будущего отчета, где именно будет выводиться результат запроса, в каком виде и под какой шапкой. Он описан на языке XML, именно в таком виде его можно посмотреть и при надобности подправить, если перейти Edit -> XML Source. В некоторых случаях так даже проще и занимает меньше времени (зависит от задачи). Например, стандартная шапка отчета:

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
<?xml version="1.0" encoding="UTF-8"  ?>
<!-- Created with iReport - A designer for JasperReports -->
<!DOCTYPE jasperReport PUBLIC "//JasperReports//DTD Report Design//EN" "http://jasperreports.sourceforge.net/dtds/jasperreport.dtd">
<jasperReport
         name="Untitled_report_1"
         columnCount="1"
         printOrder="Vertical"
         orientation="Portrait"
         pageWidth="595"
         pageHeight="842"
         columnWidth="535"
         columnSpacing=
         whenNoDataType="NoPages"
         isTitleNewPage="false"
         isSummaryNewPage="false">
    <property name="ireport.scriptlethandling" value="2" />
    <property name="ireport.encoding" value="UTF-8" />
    <import value="java.util.*" />
    <import value="net.sf.jasperreports.engine.*" />
    <import value="net.sf.jasperreports.engine.data.*" />
</jasperReport>

После успешной компиляции создается бинарный шаблон с расширением .jasper, в который подставляются данные (информация из базы данных посредством SQL-запроса, XML-файла, CSV-файла, из JavaBean Data Source и многих других источников, названия которых нам ни о чем сейчас не говорят).

Заполненный необходимыми данными jasper-файл и есть готовый отчет, файл jrprint, который можно импортировать во множество форматов: Excel, XML, HTML, OpenOffice и др.

Мне, к примеру, нужен был PDF, потому что еще не знаю, под какой осью этими отчетами будут пользоваться, и где они будут создаваться. Но вернемся к jasper файлу. Создав отчет и добавив его в SugarCRM через  «Шаблоны отчетов и запросов» -> «Новый Jasper-отчет», скорее всего, понадобится что-то в нем незначительно изменить. Нет необходимости исправлять jrxml-файл с измененным ФИО главного бухгалтера «другим шрифтом, покрасивее» и заново его добавлять, достаточно внести изменения в  IReport, скомпилировать jasper- файл и заменить им старый.

Внешний вид моей версии (напомню, что я использую 3.0.0):

ZuckerReports

Работа с отчетами ZuckerReports.Часть 2.

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

Последнее изменениеПонедельник, 10 июля 2017 18:06
  • Оцените материал
    (0 голосов)
  • Опубликовано в SugarCRM
  • Прочитано 20701 раз

8454 комментарии

Оставить комментарий

Убедитесь, что вы вводите (*) необходимую информацию, где нужно
HTML-коды запрещены

Наверх

Последние новости

  • 1
  • 2
  • 3
  • 4

Популярные новости

  • 1
  • 2
  • 3
  • 4