LimeReport Forum
General Category | Основное => Discussion | Обсуждение => Topic started by: deep125 on May 28, 2019, 07:29:53 pm
-
Привет всем. Отличная библиотека. Некоторые вещи не понятны.
В режиме previewReport можно сохранить текущий сформированный отчёт в файл. Для этого даже кнопочка есть. Как его потом загрузить заново?
Попытки передать этот файл в метод loadFromFile не работают.
-
Приветстую!
Честно говоря я эту функцию недоделал :)
Поначалу эта функция была нужна для контроля получаемого результата, и в дальнейшем планировалась возможность повторного показа сгенерировнного отчета, но руки как то до этого не дошли :)
Если надо могу доделать.
-
Задача: Сгенeрировать отчёт. Напечатать. Через год(2,3...) может возникнуть потребность напечатать его заново и/или посмотреть (даже поправить). Исходных данных уже может не быть. Как решается в рамках limereport?
-
Ну, в принципе, в этом случае можно обойтись сохранением отчета в PDF.
Но для того, чтобы оставаться в рамках limereport прикрутил:
report->prepareReportPages(); // подготовить страницы;
report->preparedPages()->saveToFile(file_name); // сохранить страницы (аналогично сохранению из предварительного просмотра);
report->preparedPages()->loadFromFile(file_name); //загрузить страницы;
report->showPreparedPages(); // показать страницы;
аналогично можно сохранить страницы в строку и QByteArray;
report->preparedPages()->saveToString()
report->preparedPages()->saveToByteArray();
-
Великолепно! Всё работает. Большое спасибо за оперативность. Ну а дальше дело техники. Попробуем сами в режиме preview добавить кнопку "Cохранить в базу" и |"Загрузить из файла".
-
Еще немного подшаманил процесс. Теперь можно перехватить нажатие кнопки "Сохранить" в окне предварительного просмотра.
Теперь у ReportEngine есть сигнал onSavePreview(bool& saved, IPreparedPages* pages) в нем можно сохранить страницы в нужное место и установить saved в true
-
Спасибо. Будем пользоваться