Статьи

Как вы делаете свои отчеты?


Почти все бизнес-приложения должны иметь некоторые отчеты для создания статистики, целей или любой другой информации, необходимой для анализа.
Существует множество инструментов и механизмов отчетов, используемых разработчиками или не разработчиками (например, Jasper, BIRT, Crystal). Некоторые бесплатны, некоторые коммерческие. Некоторые из них являются инструментами BI, некоторые проще.
  Многие люди жалуются на существующие решения, и они начали внедрять некоторые на пустом месте для удовлетворения своих потребностей. И именно так может начинаться инструмент отчетности.

NextReports был создан три года назад. Разработчики в нашей компании создавали отчеты с помощью Jasper. Но многие проблемы усложняли их жизнь. 80% отчетов были не очень сложными, но требовали изменений в очень короткие сроки. Добавление компонентов и перестановка колонок занимало много времени. Отчеты создавались бизнес-аналитиками без знания Java, но им нужно было знать некоторые классы Java для определения параметров. Перед запуском отчетов требовался этап компиляции, поэтому во всех наших экземплярах сервера нам нужно было указать в переменной PATH путь к расположению java bin.

Все эти вещи были факторами, которые привели NextReports к жизни. Сначала в Swing был создан простой дизайнер отчетов, использующий все хорошие библиотеки для настольных приложений, таких как Swingx, JGoodies, MyDoggy, JXLayer, JFreeChart.

NextReports Designer — это бесплатный и очень простой инструмент для создания запросов и отчетов. Вы можете создавать свои запросы просто с помощью перетаскивания или вы можете копаться в редакторе запросов и писать сложные запросы или вызывать хранимые процедуры.

Конструктор запросов

NextReports Designer может подключаться к популярным базам данных, таким как Oracle , MySQL , SQL Server , PostgreSQL, Derby, Firebird.

С помощью запроса вы можете создавать отчеты и диаграммы. Макет отчета — это простая сеточная структура, подобная листу Excel. Вы просто редактируете свои ячейки с текстом, параметрами, переменными, столбцами базы данных, выражениями, функциями, гиперссылками. Вы можете создавать группы и устанавливать все свои визуальные свойства, такие как цвета, шрифты, границы, шаблоны и многие другие. Отчеты можно экспортировать во многие форматы, такие как HTML, PDF, RTF, EXCEL, CSV, TSV, TXT и XML. Библиотеки iText и poi использовались для экспортеров pdf, rtf и excel.

Макет отчета

Расположение диаграмм дает вам возможность генерировать диаграммы как флэш-память, используя библиотеку Open Flash Chart, или как изображение, используя библиотеку JFreeChart. Таким образом, диаграмма может быть добавлена ​​в информационные панели для визуализации в реальном времени или может быть вставлена ​​в отчет (где будет необходимо изображение).

Макет диаграммы

Запросы, отчеты и диаграммы сохраняются в виде XML-файлов с использованием библиотеки xstream. С NextReports Designer вы можете делать больше, чем просто создавать такие объекты, как импорт / экспорт источников данных, создание простых шаблонов, резервное копирование и восстановление всего вашего рабочего пространства, публиковать ваши отчеты и диаграммы на сервере NextReports.

При установке NextReports Designer присутствует демонстрационный источник данных Derby с отчетом и диаграммой, чтобы вы могли сразу же начать и посмотреть, как все работает.

Поскольку NextReports Designer — это бесплатный инструмент, мы также создали NextReports Engine — бесплатный, очень легкий и удобный API-интерфейс , используемый для запуска ваших отчетов и диаграмм. Вам нужен ваш объект отчета, соединение с базой данных, желаемый формат и значения для ваших параметров, если таковые имеются:

FileOutputStream stream = new FileOutputStream("test.html");
FluentReportRunner.report(report)
.connectTo(connection)
.withQueryTimeout(60)
.withParameterValues(createParameterValues())
.formatAs(ReportRunner.HTML_FORMAT)
.run(stream);

В следующей статье «Как вы используете свои отчеты?» Я представлю NextReports Server и все преимущества, которые вы имеете с приложением централизованного сервера отчетов.

связи