кто что использует при создании отчетов под Lazarus?

Модератор: Модераторы

кто что использует при создании отчетов под Lazarus?

Сообщение RusDeveloper » 14.04.2016 13:19:00

кто что использует и какие впечатления? приветствуется описание достоинств и недостатков генераторов отчетов, например, таких как FastReport, LazReport, FlexCel и т.д. и т.п.
RusDeveloper
новенький
 
Сообщения: 92
Зарегистрирован: 06.04.2016 12:02:43

Re: кто что использует при создании отчетов под Lazarus?

Сообщение alexs » 14.04.2016 13:59:18

LazReport - хватает полность. Есть недостатки - по мере сил правим.
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4053
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: кто что использует при создании отчетов под Lazarus?

Сообщение rayanAyar » 15.04.2016 17:34:37

Собственный велокостыль. :) Экспортирую в LibreOffice с помощью LibreOffice Basic.

1. Софтина на лазарусе формирует файл с данными (CSV).
2. Софтина запускает LibreOffice (безголовый, невидимый).
3. Макрос в LibreOffice читает заданный файл и подставляет строки в предварительно созданный и отформатированный шаблон, формируя красивый документ.
4. По окончании работы офиса - софтина показывает юзеру готовую ODS-ку.

Плюсы:
1. Кроссплатформенность (в данный момент используется на Ubuntu/WinXP/Win7).
2. Формирование шаблона стандартными средствами офиса в самом офисе. Быстрая и удобная корректировка шаблона. Возможность корректировки шаблона даже пользователем (хоть и не любым).
3. После формирования ODS-ки пользователь по необходимости может её поправить немножко (или множко).
4. LibreOffice Basic даёт полный доступ ко всему функционалу LibreOffice (любое форматирование, диаграммы, рисование...).
Минусы:
1. Длительное формирование.
2. Очевидно, без установленного офиса не будет работать (может работать с portable-версией, но будет ещё тормознее).
3. LibreOffice Basic это не LazReport - все действия по формированию строк с данными приходится программировать самостоятельно.
4. Разрыв мозга от всего этого творчества. :) Но лучше ничего пока не придумал, с LazReport-ом мучался довольно долго - он так и не смог удовлетворить всем моим требованиям.
Аватара пользователя
rayanAyar
новенький
 
Сообщения: 42
Зарегистрирован: 06.01.2011 08:22:52
Откуда: Новоуральск

Re: кто что использует при создании отчетов под Lazarus?

Сообщение RusDeveloper » 20.04.2016 18:47:10

а готовых компонентов для формирования отчетов в OpenOffice нет? чтобы кинуть на форму компонент, в OpenOffice накидать шаблон отчета и вуаля: отчет готов. нет такого для Лазаруса?
RusDeveloper
новенький
 
Сообщения: 92
Зарегистрирован: 06.04.2016 12:02:43

Re: кто что использует при создании отчетов под Lazarus?

Сообщение Лекс Айрин » 20.04.2016 19:22:30

RusDeveloper, есть компонент работы с опен/либре офисом, по идее, никто не мешает использовать его. У меня практикант и в экселе программно файл формировал на лету. По сути, получался тот же отчет.
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград

Re: кто что использует при создании отчетов под Lazarus?

Сообщение rayanAyar » 20.04.2016 20:40:38

Лекс Айрин писал(а):У меня практикант и в экселе программно файл формировал на лету.

В MS Excel - это значит "только винды".

Лекс Айрин писал(а):есть компонент работы с опен/либре офисом

Не поделитесь опытом какой?
Сколько я пробовал - либо OLE (т.е. опять же - "только винды"), либо не работают/заброшены.
Аватара пользователя
rayanAyar
новенький
 
Сообщения: 42
Зарегистрирован: 06.01.2011 08:22:52
Откуда: Новоуральск

Re: кто что использует при создании отчетов под Lazarus?

Сообщение pupsik » 20.04.2016 21:05:49

В MS Excel - это значит "только винды"
можно и не только - fpspreadsheet.
а готовых компонентов для формирования отчетов в OpenOffice нет?
есть. Только не визуальные. Даже тут, на форуме.
Так же, вроде как и в ворд есть - fpvectorial (http://wiki.lazarus.freepascal.org/fpvectorial_-_Text_Document_Support).

п.с.
Было бы желание искать/делать...

Хм... FlexCel вроде встречал порт для лазаря.
pupsik
энтузиаст
 
Сообщения: 1154
Зарегистрирован: 20.08.2014 16:20:13

Re: кто что использует при создании отчетов под Lazarus?

Сообщение Лекс Айрин » 20.04.2016 21:13:01

rayanAyar да на форуме светился, насколько я помню, только один компонент -- viewtopic.php?f=24&t=7297 если найдешь что-то еще, то рад бы посмотреть.

а насчет Оли... ему это подходило.
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград

Re: кто что использует при создании отчетов под Lazarus?

Сообщение sign » 21.04.2016 07:59:24

Пишу отчёты через OpenOffice
Код: Выделить всё
//******************************************************************************
//*                    Written by Yuri (aka Yuric74)                           *
//*           http://www.sql.ru/forum/actualthread.aspx?tid=405083             *
//*                 all version at http://yuri.elmeh.ru                        *
//******************************************************************************
unit uOpenOffice;

Качаем, далее:
"Сервис" -> "Преобразование кода на Delphi" -> "Преобразовать проект Delphi в проект Lazarus..." - > OpenOfficeTest.dpr
Игнорируем отсутствующий модуль stdVCL.
Затем запускаем на исполнение и вычищаем косяки.

По кругу: Ctrl-F9 - замена:
1. Заменяем все .String на .AsString
2. Всякие такие штуки, типа
FTableObj.BreakType:=Value; меняем на FTableObj.BreakType:=Ord(Value);
SF.Location:=Value.Location; меняем на SF.Location:=Ord(Value.Location);
ParentSheetObj.InsertCells(TCRA,Mode); меняем на ParentSheetObj.InsertCells(TCRA,Ord(Mode));
и т.д. пока не закончатся ошибки в модуле uOpenOffice.

Потом в проекте uMain, который мы преобразовывали, полезут ошибки, но это нам пофиг.
Главное, подогнан под Lazarus модуль uOpenOffice.
В своём проекте даём путь к модулю и работаем со всей мощью OpenOffice.

1.jpg
У вас нет необходимых прав для просмотра вложений в этом сообщении.
sign
энтузиаст
 
Сообщения: 1131
Зарегистрирован: 30.08.2009 09:20:53

Re: кто что использует при создании отчетов под Lazarus?

Сообщение rayanAyar » 23.04.2016 07:15:10

pupsik писал(а):fpvectorial

pupsik писал(а):fpspreadsheet.

sign писал(а):uOpenOffice

Пробовал. Слабовато.
По-определению не может быть полностью функционально, так как это самостоятельные генераторы - они не используют офис. А полностью весь офис не перепишешь.
Кроме того они не универсальны - ни у одного нет поддержки и ODT и ODS (а мне нужны оба типа документов).

И fpvectorial это немного другое, насколько я понимаю. Он ведь не может генерировать офисные документы?

В идеале нужен UNO Bridge с паскаля (как OLE, только кроссплатформенный протокол). Я где-то даже находил такой модуль. Но заставить его работать не смог. И авторами проект заброшен.
Аватара пользователя
rayanAyar
новенький
 
Сообщения: 42
Зарегистрирован: 06.01.2011 08:22:52
Откуда: Новоуральск

Re: кто что использует при создании отчетов под Lazarus?

Сообщение sign » 23.04.2016 09:10:03

rayanAyar писал(а):
sign писал(а):uOpenOffice

Пробовал. Слабовато.
По-определению не может быть полностью функционально, так как это самостоятельные генераторы - они не используют офис. А полностью весь офис не перепишешь.
Кроме того они не универсальны - ни у одного нет поддержки и ODT и ODS (а мне нужны оба типа документов).

uOpenOffice не генератор.
Вы невнимательны, или путаете с другим пакетом.
Вот вам одна из процедур, по которой всё ясно:
Код: Выделить всё
procedure TOpenOffice.SetConnect(const Value: Boolean);
var
  SM: Variant;
begin
  if Value then
    begin
      try
        SM:=CreateOleObject('com.sun.star.ServiceManager');
        if (VarType(SM)=varDispatch) then
          FDesktop:=SM.CreateInstance('com.sun.star.frame.Desktop');
      except
        FDesktop:=Unassigned;
      end;
    end
  else
    begin
      FreeVariants;
    end;
  SM:=Unassigned;
end;

Заметили строку - CreateOleObject('com.sun.star.ServiceManager')?
Надеюсь, что смысл вам понятен.

Пакет, на который я ссылаюсь, как раз использует всю мощь офиса!
sign
энтузиаст
 
Сообщения: 1131
Зарегистрирован: 30.08.2009 09:20:53

Re: кто что использует при создании отчетов под Lazarus?

Сообщение debi12345 » 23.04.2016 11:28:33

А почему не PDF ? (у духе PHPшнго TCPDF).
Заточен под печать, платформенно-независим, шрифты можно встраивать прямо в документ. Эти шрифты можно сделать маленькими (15..20к Байт), если отсеять только нужный набор символов юникода. Итого получаем размер файла отчета 20+ КБайт.
Аватара пользователя
debi12345
долгожитель
 
Сообщения: 5752
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Re: кто что использует при создании отчетов под Lazarus?

Сообщение pupsik » 23.04.2016 19:39:52

Пробовал. Слабовато.
Тогда берите блокнотик и вперед писать свое "сильное".

Пакет, на который я ссылаюсь, как раз использует всю мощь офиса!
в винде...

А почему не PDF ?
да не..е, это вообще слабо. :mrgreen:
pupsik
энтузиаст
 
Сообщения: 1154
Зарегистрирован: 20.08.2014 16:20:13

Re: кто что использует при создании отчетов под Lazarus?

Сообщение debi12345 » 23.04.2016 21:10:00

да не..е, это вообще слабо.

Еcть еще саморапортующие форматы - PZHV("по щучьему велению") и PMH ("по моему хотению")...
Аватара пользователя
debi12345
долгожитель
 
Сообщения: 5752
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Re: кто что использует при создании отчетов под Lazarus?

Сообщение pupsik » 23.04.2016 22:18:19

debi12345 это ещё слабее :twisted:
pupsik
энтузиаст
 
Сообщения: 1154
Зарегистрирован: 20.08.2014 16:20:13

След.

Вернуться в Базы данных

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2

Рейтинг@Mail.ru