LimeReport Forum

General Category | Основное => Discussion | Обсуждение => Topic started by: deep125 on May 28, 2019, 07:29:53 PM

Title: Сохранение восстановление готового отчёта
Post by: deep125 on May 28, 2019, 07:29:53 PM
Привет всем. Отличная библиотека. Некоторые вещи не понятны.

В режиме previewReport можно сохранить текущий сформированный отчёт в файл. Для этого даже кнопочка есть. Как его потом загрузить заново?

Попытки передать этот файл в метод loadFromFile не работают.
Title: Re: Сохранение восстановление готового отчёта
Post by: Arin Alex on May 28, 2019, 08:07:13 PM
Приветстую!
Честно говоря я эту функцию недоделал :)
Поначалу эта функция была нужна для контроля получаемого результата, и в дальнейшем планировалась возможность повторного показа сгенерировнного отчета, но руки как то до этого не дошли :)
Если надо могу доделать.   
Title: Re: Сохранение восстановление готового отчёта
Post by: deep125 on May 28, 2019, 11:13:59 PM
Задача: Сгенeрировать отчёт. Напечатать. Через год(2,3...) может возникнуть потребность напечатать его заново и/или посмотреть (даже поправить). Исходных данных уже может не быть. Как решается в рамках limereport?
Title: Re: Сохранение восстановление готового отчёта
Post by: Arin Alex on May 29, 2019, 04:19:26 AM
Ну, в принципе, в этом случае можно обойтись сохранением отчета в PDF.
Но для того, чтобы оставаться в рамках limereport прикрутил:
Code: [Select]
report->prepareReportPages(); // подготовить страницы;
report->preparedPages()->saveToFile(file_name); // сохранить страницы (аналогично сохранению из предварительного просмотра);
report->preparedPages()->loadFromFile(file_name);  //загрузить страницы;
report->showPreparedPages(); // показать страницы;
аналогично можно сохранить страницы в строку и QByteArray;
report->preparedPages()->saveToString()
report->preparedPages()->saveToByteArray();
Title: Re: Сохранение восстановление готового отчёта
Post by: deep125 on May 29, 2019, 12:17:26 PM
Великолепно! Всё работает. Большое спасибо за оперативность. Ну а дальше дело техники. Попробуем сами в режиме preview добавить кнопку "Cохранить в базу" и |"Загрузить из файла".
Title: Re: Сохранение восстановление готового отчёта
Post by: Arin Alex on May 29, 2019, 11:14:40 PM
Еще немного подшаманил процесс. Теперь можно перехватить нажатие кнопки "Сохранить" в окне предварительного просмотра.
Теперь у ReportEngine есть сигнал onSavePreview(bool& saved, IPreparedPages* pages) в нем можно сохранить страницы в нужное место и установить saved в true
Title: Re: Сохранение восстановление готового отчёта
Post by: deep125 on May 30, 2019, 07:31:01 AM
Спасибо. Будем пользоваться