Russian Qt Forum

Разное => Новости Qt сообщества => Тема начата: TEHb от Сентябрь 03, 2015, 12:56



Название: Lime Report - Qt генератор отчетов
Отправлено: TEHb от Сентябрь 03, 2015, 12:56
  Вниманию общественности представляется Lime Report - кросс-платформенная С++ библиотека, написанная с использованием Qt framework и предназначенная для разработчиков программного обеспечения, которые хотят добавить в свое Qt приложение возможность формирования отчетов или печатных форм, генерируемых на основании шаблона.
  Дизайнер отчетов, входящий в состав этой библиотеки, позволит быстро и интуитивно-понятно сформировать шаблон печатной формы, который может быть сохранен в формате XML и использован в дальнейшем для генерации страниц отчета. Полученные таким образом страницы могут быть направлены на предварительный просмотр, в PDF файл или на принтер. В качестве источника данных поддерживается SQL база данных или данные, переданные из приложения с использованием интерфейса QAbstractTableModel. Также из приложения могут быть проинициализированы переменные, которые доступны в качестве параметров запросов к базе данных.
  Задача LimeReport - оснастить Ваше приложение функционально-богатым и в тоже время простым в использовании инструментом генерации отчетов, которым смогут пользоваться даже неискушенные в информационных технологиях пользователи.

Основные возможности:
Кросс-платформеность
Встроенный дизайнер отчетов
Встроенный предварительный просмотр
Внешнее или внутреннее подключение к источнику данных
Возможность передавать параметры для внутренних запросов к базе данных из внешнего приложения
Различные типы бэндов, позволяющие создать отчет любой сложности.
Верхний, нижний колонтитулы страницы.
Группировка данных (GroupHeader, GroupFooter, Subdetail, SubdetailHeader, SubdetailFooter)
Групповые функции (SUM, COUNT, AVG, MIN, MAX)
Элементы отчета : Текст, Геометрические фигуры(линия, эллипс, прямоугольник), Изображение
Возможность объединять элементы в горизонтальную группу
Возможность использования HTML для форматирования полей вывода
Возможность использования скриптов в для формирования выходных данных
Автоматическое вычисление высоты бэнда
Интеллектуальное рассечение бэнда с переносом данных на следующую страницу


http://limereport.ru
Демо, описание, фалы для скачивания: http://limereport.sourceforge.net/


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: panAlexey от Сентябрь 07, 2015, 18:31
Цитировать
Задача LimeReport - оснастить Ваше приложение функционально-богатым и в тоже время простым в использовании инструментом генерации отчетов, которым смогут пользоваться даже неискушенные в информационных технологиях пользователи.
Не так уж он и прост.
Юзеры как следует помучаются составляя свои отчеты.
о вещь ценная :) Спасибо )


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: TEHb от Октябрь 12, 2015, 11:44
Новая версия  LimeReport доступна для скачивания:
1. Добавлены хидер/футер для мастербэнда
2. Мультиселект объектов, выставление общих свойств для них
3. Окно редактора объекта по даблклику по наименованию в  дереве отчета .
4. Группировка данных в бэндах.
5. Лицензия LGPL.


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: AzazelloAV от Октябрь 12, 2015, 15:53
Новая версия  LimeReport доступна для скачивания:
1. Добавлены хидер/футер для мастербэнда
2. Мультиселект объектов, выставление общих свойств для них
3. Окно редактора объекта по даблклику по наименованию в  дереве отчета .
4. Группировка данных в бэндах.
5. Лицензия LGPL.

Через сколько станет платный.


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: TEHb от Октябрь 13, 2015, 13:29
Не раньше, чем будет понимание того,что качественное исполнение того заслуживает.
На данный момент пока мало данных по тестированию. Либо все настолько хорошо, что народ просто пользуется и лень отзыв отписать, либо, наоборот, малоинтересно, и тут видятся 2 варианта:
1. Малоинтересно вообще.
2. Малоинтересно,потому что уже используются другие продукты.
Хотя данный проект значительной частью своей судьбы обязан именно отсутствием в широком доступе понятных, неглючных и доступных Qt репорт-енджинов.


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: Yegor от Октябрь 19, 2015, 20:43
    Всем здравствуйте!

    Очень хорошая вещь!

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

    Или тогда если это нельзя, есть ли способ сделать, чтобы Lime Report начал нумероваться не с первой страницы, а с боле поздней? То есть можно инициализировать самому системную переменную #PAGE ? (разбить отчет на несколько отдельных подотчетов, а потом распечатать их, и у них нумерация страниц как бы дополняла друг друга)


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: Yegor от Октябрь 21, 2015, 17:49
Придумал, как начинать нумерацию страниц не с 1 а с более поздней.
Для этого в шаблон отчета добавляю пользовательскую переменную "START_PAGE" - это с какого числа начинать нумерацию. Инициализирую ее из своего приложения, или из дизайнера. А тем, где нужно выводить номер страницы в отчете, кидаю текстовый элемент, и в нем ввожу:
Код:
$S{ $V{#PAGE} + $V{START_PAGE} - 1}


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: TEHb от Октябрь 21, 2015, 18:23
День добрый!
Благодарим за использование!
Многостраничность по плану должна появиться в следующем релизе.
Если Вам нетрудно - просьба текущие и будущие пожелания (а, возможно, и впечатления о программе (хотя бы в 2-х словах)) оформлять на странице закачки limereport.sourceforge.net, разделы "Reviews" и "Discussion".
Активным тестировщикам и лицам, участвующим в улучшении качества продукта, - от нас бонусные преференции в использовании ;)


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: Yegor от Октябрь 24, 2015, 10:50
Нашел 2 бага, некритичных.

Первый: если в окне редактирования "Datasource" составлять источник данных, который использует в себе пользовательские переменные, и в этом окне нажать кнопку "Preview", то появляется окно об ошибке. Пишет что неправильный SQL запрос (ошибка синтаксиса). Но этот datasource правильный, и тем не менее правильно работает.

И второй: если в дизайнере отредактировать значения пользовательских переменных, которые принимают участия в datasource, то они вступят в силу в предпросмотре в дизайнере ("Render Report") только после сохранения, закрытия дизайнера, потом открытия дизайнера. То есть в следующей сессии.

От себя хочу добавить, что была бы очень полезная функция для составления содержания (оглавления) отчета, где есть главы и номер страницы этой главы. И возможность одновременного открытия и редактирования нескольких документов (шаблонов). С возможностью копирования и вставки элементов (текстовых например) из одного документа во второй. А то если нужно создать второй шаблон, похожий на первый, приходится второй заново с нуля собирать.


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: TEHb от Октябрь 27, 2015, 08:48
1. Баги пофиксим,спасибо.
2. Пожелания приняты к сведению,посмотрим,что можно будет сделать. Идентичные шаблоны (по опыту :)) удобно делать так - открываете первый, пересохраняете во второй, выкидывая все лишнее (ну как вариант на данный момент,если у вас уже есть такая необходимость).


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: Yegor от Октябрь 27, 2015, 21:15
Здравствуйте!

Обнаружил такую уязвимость:
Пользовательские переменные или значения, извлекаемые из master datasource, если они используются в datasource, то их лучше оборачивать sql конструкцией CAST(). Например: CAST($V{MyVar} AS UNSIGNED). Иначе в одних datasource они могут работать, в других нет. При оборачивании - все работают.

Обнаружил неприятный баг.

Если делать datasource, в котором используются пользовательские переменные, то наблюдается следующая закономерность:

 - Когда каждая пользовательская переменная встречается в пределах данного datasource только один раз, то ошибок нет.
 - А если пользовательская переменная встречается в пределах данного datasource два и более раз, то только последнее упоминание переменной в текущем datasource сохраняет правильное значение, а все предыдущие - обнуляются. Баг критический, поскольку в реальных приложениях (у меня такой случай), в одном datasource одна пользовательская переменная может прописываться несколько раз в одном sql выражении. Если такой шаблон просматривать (делать prewiew) из дизайнера - этот баг не проявляется, если делать preview из своей программы - проявляется.

Например, делаю простейший случай:

создаю datasource my_datasource
в нем:

SELECT
 $V{SensorId} AS MySensorId ,
 $V{YearNo} AS MyYearNo ,
 $V{WeekNo} AS WeekNo ;

Вывожу в шаблон:
$D{my_datasource.MySensorId},
$D{my_datasource.MyYearNo},
$D{my_datasource.WeekNo}

В preview:
75,
2014,
35

Здесь все правильно.
---------------------------------------------------

Если каждая переменная используется по 2 раза:

в datasource:
SELECT
 $V{SensorId} AS MySensorId ,
 $V{YearNo} AS MyYearNo ,
 $V{WeekNo} AS WeekNo ,
 $V{SensorId} AS MySensorId2 ,
 $V{YearNo} AS MyYearNo2 ,
 $V{WeekNo} AS WeekNo2 ;

в шаблоне:
$D{my_datasource.MySensorId},
$D{my_datasource.MyYearNo},
$D{my_datasource.WeekNo},
$D{my_datasource.MySensorId2},
$D{my_datasource.MyYearNo2},
$D{my_datasource.WeekNo2}

В preview:
0,
0,
0,
75,
2014,
35

----------------------------------------------------

Если каждая переменная используется по 3 раза:

в datasource:
SELECT
 $V{SensorId} AS MySensorId ,
 $V{YearNo} AS MyYearNo ,
 $V{WeekNo} AS WeekNo ,
 $V{SensorId} AS MySensorId2 ,
 $V{YearNo} AS MyYearNo2 ,
 $V{WeekNo} AS WeekNo2 ,
 $V{SensorId} AS MySensorId3 ,
 $V{YearNo} AS MyYearNo3 ,
 $V{WeekNo} AS WeekNo3 ;

в шаблоне:
$D{my_datasource.MySensorId},
$D{my_datasource.MyYearNo},
$D{my_datasource.WeekNo},
$D{my_datasource.MySensorId2},
$D{my_datasource.MyYearNo2},
$D{my_datasource.WeekNo2},
$D{my_datasource.MySensorId3},
$D{my_datasource.MyYearNo3},
$D{my_datasource.WeekNo3}

В preview:
0,
0,
0,
0,
0,
0,
75,
2014,
35


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: TEHb от Октябрь 28, 2015, 11:17
Доброго времени суток

Спасибо за активное выявление багов :)
Баг с переменными  пофиксим в ближайшее время. Скажите вы Qt 4 или 5 используете ?


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: Yegor от Октябрь 28, 2015, 14:18
Использую Qt 4.8.6


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: Yegor от Октябрь 29, 2015, 19:56
А в проекте предусматривается возможность экспорта отчетов в pdf?


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: TEHb от Октябрь 30, 2015, 03:08
Да, буквально в на днях выложим с версию с возможность генерации отчета в pdf и исправленными переменными :)


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: TEHb от Ноябрь 03, 2015, 16:03
Версия Lime Report 1.2.1 доступна для скачивания:

1. Добавлена возможность скрытия боковых панелей;
2. Улучшен внешний вид и функциональность элементов отчета;
3. Добавлена функция печати в PDF;
4. Исправлена ошибка при использовании переменных в SQL - запросе, возникающая при предварительном просмотре в окне редактора источника данных;
5. Исправлена ошибка инициализации, возникающая при множественном использовании переменной в SQL- запросе.
6. .. и другие небольшие недочеты.


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: Racheengel от Ноябрь 04, 2015, 19:56
У вас 1-й скриншот на сайте битый... Текст налез друг на друга.


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: TEHb от Ноябрь 05, 2015, 11:09
Если Вы про наложение содержимого текстовых объектов на названия бэндов-то так и и было задумано :).
В версии 1.2.1 названия бэндов убраны для лучшего восприятия.
Скриншоты поправим, спасибо.


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: Racheengel от Ноябрь 06, 2015, 02:45
Если Вы про наложение содержимого текстовых объектов на названия бэндов-то так и и было задумано :).
В версии 1.2.1 названия бэндов убраны для лучшего восприятия.
Скриншоты поправим, спасибо.

Да не за что, просто первое впечатление у меня было, что реально битый скрин :)

Кстати, а object inspector у вас на чем основан? Или самописный?


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: TEHb от Ноябрь 06, 2015, 07:59
Самописный.


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: TEHb от Декабрь 18, 2015, 17:26
Версия Lime Report 1.3.1 доступна для скачивания:

Добавлено:
1. Колонки
   Некоторые банды могут быть разделены на колонки
2. Управление расположением объектов
   Элементы отчета можно прижимать к левому или правому краю,
   центрировать или растягивать на всю длинну контейнера
3. Старт новой страницы на группе
4. Сброс нумерации страниц на группе
5. Добавлен табличный режим в горизонтальную группировку
   Этот режим позволяет распределять внутреннее пространство внутри группировки
   между объектами при фиксированном размере самой группировки.

Исправлено:
Подключение к postgresql
Ошибка, не дававшая корректно работать более чем одному экземпляру LimeReport::ReportEngine


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: TEHb от Февраль 09, 2016, 09:43
Релиз 1.3.9 доступен для скачивания:

Добавлены функции: QString::saveToString(),
loadFromString(const QString& report, const QString& name=""),
QByteArray::saveToByteArray()

к LimeReport::ReportEngine.

Добавлен метод setCurrentReportsDir(const QString& dirName);
Добавлена возможность печати заголовка данных на каждой странице;
Добавлены колонки к заголовку данных;
Добавлено свойство «startNewPage» у банда «Дата (Data)»;

Повышена производительность;
Пофиксены некоторые баги.

ВНИМАНИЕ для разработчиков и пользователей!
В начиная с этой версии, элемент «Текст», по умолчанию, не использует HTML. Для включения поддержки HTML, используется свойство allowHTML.

Обсуждения/пожелания: http://limereport.ru/forum/board_1_0.html


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: panAlexey от Февраль 09, 2016, 10:25
Not Found

The requested URL /forum/board_1_0.html was not found on this server.


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: TEHb от Февраль 09, 2016, 11:10
Сорри, обсуждения/пожелания http://limereport.ru/forum/


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: TEHb от Март 01, 2016, 12:28
Привет всем! Версия Qt утилиты печати Lime Report 1.3.10 доступна для скачивания

1.Пофиксена утечка памяти

2.Добавлены Сетка и Настройки

3.Добавлено Меню недавно использованных файлов

4.Добавлена функция примагничивания объектов при дизайне шаблона

5.Добавлена возможность использования переменных при установлении соединения.

Скачивание http://sourceforge.net/projects/limereport...atest/download/

Таски https://github.com/fralx/LimeReport/

Обсуждение http://limereport.ru/forum/

Вэлкам  :)


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: TEHb от Июнь 01, 2016, 15:52
Освежаем тему к лету! Версия Qt редактора печати Lime Report 1.3.11 выложена.

1. Изменена структура проекта
2. Добавлен виджет предварительного просмотра
3. Добавлено новое демо
4. Исправлена ландшафтная ориентация страницы
5. Исправлены различные недочеты

Скачивание https://sourceforge.net/projects/limereport/

Таски https://github.com/fralx/LimeReport/

Обсуждение http://limereport.ru/forum/


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: panAlexey от Июнь 27, 2016, 20:11
Скачивание http://sourceforge.net/projects/limereport...atest/download/
Whoops, we can't find that page.


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: Old от Июнь 27, 2016, 20:20
Скачивание http://sourceforge.net/projects/limereport...atest/download/
Whoops, we can't find that page.
На github они остались.


Название: Re: Lime Report - Qt генератор отчетов
Отправлено: TEHb от Июнь 30, 2016, 09:42
Скачивание http://sourceforge.net/projects/limereport...atest/download/
Whoops, we can't find that page.
Сорри, ссылка на sourceforge кривая :(
Вот так правильно:
https://sourceforge.net/projects/limereport/