Генераторы отчетов FastReport 4 и QuickReport 5: версии 2008 года

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

Мне хотелось бы остановиться на двух известных генераторах отчетов, которые я использую в своей работе — это FastReport 4 и QuickReport 5. Для сравнения будут использованы самые последние на момент создания статьи версии: FastReport 4.6.32 от 19.05.2008 г. и QuickReport 5.02 от 12.05.2008 г.

Итак, в апреле 2008 компания QBS Software Ltd. выпустила новую версию своего известного генератора отчетов QuickReport v5. По сравнению с предыдущей версией изменений много (подробно на официальном сайте). Во-первых, традиционное в таком случае исправление мелких ошибок и небольшие доработки. Во-вторых, в состав пакета вошли два продукта, которые раньше разрабатывали другие фирмы: QRDesign и QR Powerpack. В третьих, интересные, на мой взгляд, изменения произошли в предварительном просмотре и в экспорте. При этом принцип работы генератора, а значит и порядок создания отчета программистом практически не изменился и отчеты, созданные в v4, свободно переносятся в v5. Это делает переход к новой версии практически незаметным.

Компания Fast Reports Inc. тоже в апреле 2008 года выпустила очередную версию генератора отчетов FastReport v4.6. В генераторе уже начиная с v4.0 появилось много новых возможностей (подробно на официальном сайте) В частности новые возможности при печати, доработаны режимы предварительного просмотра и дизайнера.

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

Предварительный просмотр

В пятую версию QR фирма-разработчик включила сразу две формы предварительного просмотра: традиционная, пришедшая из предыдущих версий и новая, основанная на формате отчета XML. Хотя формы имеют почти одинаковый пользовательский интерфейс, но по функциям они отличаются. Например, в новой XML форме сильнее развиты функции поиска, зато слабее функции экспорта. Интересно, что в XML форме отсутствуют стандартные обработчики всех событий, даже для кнопки “Печать”, не говоря уже об экспорте, поэтому программисту, желающему воспользоваться новой формой, придется об этом позаботиться.

Все имеющие, на мой взгляд, значение особенности предварительного просмотра я свела в одну таблицу

Характеристика FR4 QR5 QR5 XML
Настройка свойств принтера Да Да Да
Настройка свойств страницы Да Нет Нет
Редактирование готового отчета Да Нет Нет
Русскоязычный интерфейс Да Нет Нет
Поиск с использованием русского алфавита Да Нет Да
Поддержка символов Unicode Да Да Да
Начало показа до окончания формирования Да Да Нет
Возможность прервать формирование в любой момент Да Да Нет
Интерактивный интерфейс Да Нет Да
Переход на страницу по номеру Да Да Да
Масштабирование: по ширине, целиком страница, исходный размер Да Да Да
Масштабирование произвольное Да Нет Нет
Эскизы страниц Да Да Да
Копирование текущего листа в буфер обмена Нет Да Нет
Сохранить/загрузить отчет* Да Да Да
Визуальный дизайнер форм отчета для пользователя Да Да Да
Возможность создания своей формы просмотра Да Да Да
Экспорт в другие форматы документов Да Да Да

* в FastReport для просмотра сохраненных отчетов существует отдельная программа FRViewer, а в QuickReport ничего подобного нет.

Хоть формально некоторые параметры присутствуют в обоих генераторах, но их реализация может существенно отличаться. Например, интерактивный интерфейс в FR — это динамически открывающиеся группы (drill-down) и обработчики нажатия мыши на различных объектах отчета, а в QR — только одни обработчики нажатия и только в версии XML. В FastReport дизайнер форм отчета для пользователя встроен в генератор и готов к использованию без дополнительных действий, а для QR дизайнер поставляется в виде отдельного набора компонент QRDesigner, из которых программисту надо собирать редактор отчета. Произвольное масштабирование в QR возможно, но только при создании собственного окна предварительного просмотра. Unicode в QR поддерживают только три, специально предназначенные для этого компонента.

Настройки печати


Окно настроек печати FastReport

Окно настроек печати QuickReport

Только один взгляд на количество настроек уже выявляет преимущество генератора FastReport. А такие возможности как масштабирование большого отчета для печати на листе другого формата, возможность разрезания больших страниц и т.д., управление порядком печати и управление режимом дуплекса, возможность печати четных или нечетных страниц отчета у FastReport’а просто уникальны. Из особенностей QuickReport — только печать выделенного фрагмента текста.

Экспорт отчетов

Возможности экспорта можно оценить количеством поддерживаемых форматов и качеством экспортированного документа.

FastReport поддерживает экспорт в 15 форматов: PDF, RTF, XLS, XML, HTML, JPG, BMP, GIF, TIFF, TXT, CSV, ODS, ODT, e-mail
QuickReport поддерживает экспорт в 9 форматов: PDF, RTF, XLS, QRX (XML), HTML, TXT, CSV, WMF, EMF

Уникальна возможность FastReport’а экспортировать в формат OpenOffice. Этот бесплатный офисный пакет в последнее время набирает популярность, особенно у организаций умеющих считать деньги.

С количеством понятно, посмотрим, как обстоят дела с качеством экспорта.

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

Сравним форматы подходящие для редактирования:


FR в Microsoft Word 2007

QR в Microsoft Word 2007

FR в Microsoft Excel 2007

QR в Microsoft Excel 2007

FR в Adobe Acrobat

QR в Adobe Acrobat

FR в HTML

QR в HTML

В FastReport экспорт в любой формат внешне выглядит вполне достойно. Моя практика показывает, что такой экспортированный документ вполне пригоден к редактированию и печати.

А вот в QuickReport нормально выглядит только документы PDF и HTML (огрехи есть, но они минимальны). Но я не вижу практического смысла экспорта в Word и Excel при таком качестве. С предыдущей версией Microsoft Office 2003 внешний вид экспортированных документов практически не меняется, единственное заметное отличие — в Excel надписи будут русским алфавитом. Тестировать еще более старую версию Office не вижу смысла. Возможно, документ счет-фактура не самый простой для экспорта, и если взять другой отчет, например, простой список чего-либо, то он выгрузится в более приемлемом качестве. Но, к сожалению, реальная программа состоит не только из простых отчетов, но и из более сложных, и обычно таких немало.

Цена

Сравним стоимость лицензии для одного разработчика по данным с официальных сайтов QBS Software Ltd. и Fast Reports Inc.:

QuickReport Professional — $233,83 (примерно 10900 руб.)

FastReport Enterprise Edition — 6990 руб.

Вывод получается неутешительный для QuickReport. Новая пятая по счету версия, даже несмотря на общий прогресс, в целом проигрывает своему конкуренту.

Вместе с тем, нельзя не отметить положительные тенденции в развитии QuickReport. После длительного перерыва (версия 4 вышла в далеком 2004 году) компания все-таки выпустила новую версию, существенно расширив функциональность, хоть и сделано это было по большей части за счет приобретения и включения в пакет продуктов других компаний. Фирме разработчику еще есть куда совершенствовать свой продукт и в первую очередь в сторону укрепления единства концепции построения отчета. Пока наличие двух (и даже трех) компонентов выполняющих практически одинаковые функции только путает разработчика. Да и мелкие досадные ошибки в коде пока еще встречаются.

Что ж, подождем следующую версию QuickReport, оценим ее будущие достоинства. А пока новые отчеты буду создавать в FastReport, так как он позволяет формировать отчеты быстро, качественно. С такими отчетами легко работать после экспорта, чем очень довольны заказчики. А для разработчика — это является одним из главных критериев.

Примеры, описанные в статье, можно посмотреть в прилагаемом архиве.
К материалу прилагаются файлы: Примеры к статье (204.7 K)

Автор статьи: Ирина Цыбульникова

Comments are closed.