Russian Qt Forum
Ноябрь 25, 2024, 17:02 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1] 2   Вниз
  Печать  
Автор Тема: Опять про генераторы отчетов  (Прочитано 12568 раз)
voltron
Гость
« : Июнь 27, 2013, 12:23 »

Вопрос создания различных отчетов поднимается на форуме с завидной регулярностью, т.к. задача распространенная и востребованная. К сожалению, в Qt нет своего встроенного генератора, а имеющиеся классы (QTextDocument и др.) хороши только для создания несложных документов. Конечно, существуют сторонние решения, такие как NCReport, OpenRPT, eXaro, но судя по темам в форуме с ними тоже не все гладко. NCReport коммерческий, свободная версия устарела и написана, если не ошибаюсь, под Qt3. eXaro выглядит интересно, но похоже, проект заброшен. Про OpenRPT сказать ничего не могу, но описание выглядит многообещающе.

Сам долгое время работал с FastReport, считаю его одним из лучших и удобных генераторов. К сожалению, продукт коммерческий и с Qt не дружит. Но его ранние версии, известные как FreeReport, открыты под GPL v2.

Хотелось бы узнать мнение форумчан. Стоит ли пытаться портировать FreeReport на Qt/С++ (и развивать результат дальше)? Есть ли желающие присоединиться к этой затее?
Записан
panAlexey
Гипер активный житель
*****
Offline Offline

Сообщений: 864

Акцио ЗАРПЛАТА!!!!! :(


Просмотр профиля
« Ответ #1 : Июнь 27, 2013, 13:17 »

Что вкладываешь в понятие "Генератор отчетов"?
ПС. На самом деле тру-генератор отчетов - это сам программист/пользователь Улыбающийся
« Последнее редактирование: Июнь 27, 2013, 13:28 от panAlexey » Записан

Win Xp SP-2, Qt4.3.4/MinGW. http://trdm.1gb.ru/
dio
Гость
« Ответ #2 : Июнь 27, 2013, 22:54 »

имеющиеся классы (QTextDocument и др.) хороши только для создания несложных документов

Это Вы зря так говорите. С помощью QPrinter и QPainter можно реализовать чего душе угодно. Как раз для очень сложных отчетов, которые динамически меняются, у которых сложная логика, данный способ подходит лучше всего. И если подготовить хорошую оснастку для работы с данными классами, то скорость разработки будет высока. Вопрос только в удобстве. Не каждому по душе кодить отчеты. 
Записан
voltron
Гость
« Ответ #3 : Июнь 28, 2013, 10:29 »

Вопрос только в удобстве. Не каждому по душе кодить отчеты. 

Отчеты «зашитые» код — зло. У пользователя должна быть возможность редактирования существующих шаблонов и создания новых, сколь угодно сложных, с дополнительными функциями обработки, отсутствующими/не предусмотренными в самом движке. Разумеется, ИМХО, но это мнение не на пустом месте возникло.
Записан
Bepec
Гость
« Ответ #4 : Июнь 28, 2013, 11:18 »

Ага, а так же возможность изменить имеющийся шаблон и убить его )

Для программы, цель которой выдавать отчет нужен отчёт, который не меняется Веселый Чтобы потом его можно было в другую программу сунуть. Тут ваша "гибкость" излишняя.
Записан
Old
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4350



Просмотр профиля
« Ответ #5 : Июнь 28, 2013, 11:29 »

Я как то делал систему отчетов, в которой были шаблонные html-файлы, при генерации переменные просто заменялись значениями.
Плюс добавил условия как в препроцессоре. Если эта таблица нужна, то переменную нужно установить в true и она попадает в отчет, если не нужно - движек ее просто пропускает.
Шаблоны делал в openoffice.
Записан
dio
Гость
« Ответ #6 : Июнь 28, 2013, 14:32 »


У пользователя должна быть возможность редактирования существующих шаблонов и создания новых, сколь угодно сложных, с дополнительными функциями обработки, отсутствующими/не предусмотренными в самом движке.

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

Когда я озадачивался вопросом выбора бесплатного генератора отчетов, я еще, помимо Ваших, рассматривал варианты:

  • Jasper Reports
  • Генерация DOC (Microsoft word) файлов на основе шаблонов
  • Генерация PDF файлов
Записан
panAlexey
Гипер активный житель
*****
Offline Offline

Сообщений: 864

Акцио ЗАРПЛАТА!!!!! :(


Просмотр профиля
« Ответ #7 : Июнь 30, 2013, 13:37 »

Когда пользователю необходимо быстро внести корректировку к оформлению отчета, то да, такая возможность ему оказалась бы полезной. На на практике, формы отчетов утверждены и меняются редко.
моя практика утверждает обратное.
Добавляю новые отчеты и модифициирую старые где-то раз в неделю.
Записан

Win Xp SP-2, Qt4.3.4/MinGW. http://trdm.1gb.ru/
panAlexey
Гипер активный житель
*****
Offline Offline

Сообщений: 864

Акцио ЗАРПЛАТА!!!!! :(


Просмотр профиля
« Ответ #8 : Июнь 30, 2013, 13:46 »

насчет "генераторов отчетов" - не представляю себе генератор без встроенного языка с широкими функциями.
какие только отчеты не приходилось делать.
и по таблицам в SQL базе и по данным, получаемых парсингом с сайтов, и по данным из текстовых, xml, xls и т.п.
какие отчеты только не приходилось делать: текстовые, табличные, в экселе, в ворде, в хтмл, в xml.
вот только никто не просил в pdf выводить. ну и слава богу. ))) терпеть его не могу - дурацкий формат.
Записан

Win Xp SP-2, Qt4.3.4/MinGW. http://trdm.1gb.ru/
voltron
Гость
« Ответ #9 : Июль 15, 2013, 10:38 »

Ага, а так же возможность изменить имеющийся шаблон и убить его )
Не вижу проблемы. Если имеющийся шаблон не подходит, то почему бы его не изменить? А если он не нужен, то вполне логичным будет удалить его, чтобы не мозолил глаза.

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

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

Не могу согласиться. Возможно, в некоторых областях формат отчетов устанавливается раз и навсегда включая оформление. В моей, более чем 5-летней практике, создавать новые шаблоны и модифицировать старые приходилось часто. А если к этому добавить выдачу информации на различные запросы всяких структур вроде прокуратуры, налоговой и богзнаеткогоещё, то мало не покажется. И без генератора, желательно со встроенным языком, в этом случае никак.
Записан
Bepec
Гость
« Ответ #10 : Июль 15, 2013, 10:51 »

Voltron - Представьте ситуацию...

Многотысячная корпорация. Каждый месяц выпускается отчёт по... Ну допустим каким то нормативам. Другие компании имеют доступ к этому отчёту и должны использовать эти данные. И вот тут возникает проблема.

Технику Васе не понравился вид отчёта, поэтому он взял и поменял местами два-три раздела и, допустим, добавил пару строк описания.

90% компаний, получающих этот отчёт парсят его и получают значения автоматом.

НО.

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

Ведь 90 % парсеров тупо возьмут значения из формы отчёта (строка 20, начиная с пятого символа). Умные то писать под простой отчёт никто не будет Подмигивающий  И как показывает практика, дай боже чтобы там не сидела девушка, которая будет переписывать "вот эту строчечку"  в "вот эту формочку".

Записан
mks
Гость
« Ответ #11 : Июль 16, 2013, 01:10 »

Приветствую.
Сам я к отчётам имею весьма отдалённое отношение, если не сказать больше  Смеющийся . Однако читая вашу дискуссию меня посетила пара мыслей. Если вам нужны настраиваемые шаблоны, которые должен редактировать пользователь то для этого вполне может сгодится html+css, современные стандарты позволяют в окне браузера нарисовать практически что угодно. Данные в такой шаблон можно подставлять например с помощью grantlee и дальше выводить это дело в окошко с webkit.
Записан
Bepec
Гость
« Ответ #12 : Июль 16, 2013, 06:55 »

mks - и просматривать шаблоны нужно в internet explorer 6 ревизия 470?  Просто потому, что верстка может поползти/улететь и измениться? Показает язык

PS Я уж не упоминаю о том, чтобы этот файл отчета имел поддержку всех браузеров Улыбающийся
Записан
thechicho
Гость
« Ответ #13 : Июль 16, 2013, 09:12 »

//После изменений данные летят неверные, систему корёжит, база данных падает, сервера уходят в ребут

после неверного парсинга? это что же за горепрограммист такое может написать. имхо, это из области фантастики.

//mks - и просматривать шаблоны нужно в internet explorer 6 ревизия 470?
//и дальше выводить это дело в окошко с webkit.
 Веселый
Записан
mks
Гость
« Ответ #14 : Июль 16, 2013, 11:19 »

mks - и просматривать шаблоны нужно в internet explorer 6 ревизия 470?...
Зачем в IE, я имел ввиду встроить webkit в своё приложение, он вроде современные стандарты поддерживает вполне хорошо, и использовать его как визуализатор шаблона. Насколько я понял суть вопроса изучая сайты приведенных в первом сообщении программ, отчёт - это некий совокупный документ который надо сформировать по данным программы и вывести на печать. Если я сморозил бред, тогда извиняйте  Смеющийся
Записан
Страниц: [1] 2   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.218 секунд. Запросов: 23.