Настройка отчетов
Свойства приложения
В этом разделе описаны свойства приложения, связанные с дополнением Reports, в алфавитном порядке.
jmix.reports.client.background-report-processing-timeout-ms
Определяет таймаут обработки в миллисекундах для выполнения отчета, если свойство jmix.reports.client.use-background-report-processing установлено в true.
Значение по умолчанию: 10000.
jmix.reports.client.enable-tab-symbol-in-data-set-editor
Определяет, должна ли клавиша TAB обрабатываться как символ \t вместо навигации по фокусу в полях Script экрана деталей отчета.
Значение по умолчанию: false
jmix.reports.client.use-background-report-processing
Позволяет установить выполнение отчета как фоновую задачу. Это свойство используется для добавления опции отмены.
Значение по умолчанию: false.
jmix.reports.curl-path
Дополнение Reports использует инструмент cURL для запуска внешних отчетов. Значение свойства представляет путь к инструменту cURL.
Значение по умолчанию: curl.
jmix.reports.display-device-available
Значение false позволяет запускать LibreOffice в серверной операционной системе без оконного интерфейса.
Значение по умолчанию: false
jmix.reports.doc-formatter-timeout
Устанавливает таймаут LibreOffice в секундах для преобразования DOCX/XLSX в HTML/PDF.
По истечении времени пользователь получит сообщение об ошибке.
Значение по умолчанию: 20
jmix.reports.formulas-post-processing-evaluation-enabled
Управляет тем, пересчитываются ли формулы в отчетах XLSX после формирования документа отчета.
Когда включено (true), LibreOffice или другое программное обеспечение для работы с электронными таблицами пересчитает все формулы в отчете XLSX, гарантируя отображение самых актуальных значений. Это особенно полезно, когда формулы в отчете не рассчитываются автоматически при открытии в некоторых приложениях для работы с электронными таблицами.
Значение по умолчанию: false.
jmix.reports.history-cleanup-max-days
Задача по расписанию удаляет все записи истории выполнения старше указанного количества дней. Если значение свойства равно 0, задача по расписанию не учитывает это свойство при удалении записей.
Смотрите Очистка истории для получения подробной информации о настройке задачи по расписанию.
Значение по умолчанию: 730
jmix.reports.history-cleanup-max-items-per-report
Задача по расписанию оставляет не более этого количества записей истории выполнения для каждого отчета. Не рекомендуется использовать число больше 1000 в качестве значения этого свойства. Если значение свойства равно 0, задача по расписанию не учитывает это свойство при удалении записей. Это полезно для часто запускаемых отчетов, таких как шаблоны электронной почты, шаблоны документов счетов-фактур и т.д.
Смотрите Очистка истории для получения подробной информации о настройке задачи по расписанию.
Значение по умолчанию: 1000.
jmix.reports.history-recording-enabled
Активирует механизм истории выполнения отчетов.
Значение по умолчанию: false.
jmix.reports.multiline-strings-processing-enabled
Включает обработку многострочных строк в значениях параметров для шаблонов отчетов DOCX. Когда включено (true), символы переноса строки (\n, \r\n), присутствующие в значениях параметров, отображаются как фактические переносы строк в сгенерированном документе DOCX. Эта функциональность применяется только при использовании шаблона DOCX.
Значение по умолчанию: false.
jmix.reports.office-ports
Определяет список доступных портов для LibreOffice, разделенных запятыми или вертикальной чертой.
Например: jmix.reports.office-ports = 8100|8101|8102|8103|8104|8105.
Значение по умолчанию: 8100, 8101, 8102, 8103.
jmix.reports.pdf-fonts-directory
Устанавливает путь к директории со шрифтами для преобразования отчетов из HTML в PDF.
Например: jmix.reports.pdf-fonts-directory = C:/Windows/Fonts.
jmix.reports.put-empty-row-if-no-data-selected
Устанавливает режим, при котором бэнды, наборы данных которых не вернули записей, все равно отображаются один раз.
Значение по умолчанию: true
jmix.reports.save-output-documents-to-history
Если установлено в true, файлы результатов отчетов сохраняются в файловом хранилище, если свойство jmix.reports.history-recording-enabled включено. Смотрите Выходные документы для получения подробной информации.
Значение по умолчанию: false.
Установка и настройка LibreOffice
Дополнение Reports использует пакет LibreOffice для вывода отчетов в форматах PDF и DOC. Ниже мы предоставляем инструкции о том, как установить и настроить его на сервере приложений:
Для Microsoft Windows
-
Скачайте приложение на www.libreoffice.org.
-
Установите приложение.
-
Настройте свойство приложения jmix.reports.office-path, установите путь к LibreOffice, например:
jmix.reports.office-path = C:/Program Files (x86)/LibreOffice 5/program
На сервере Ubuntu
-
Установите пакет
libreoffice, например, выполнив следующую команду:$ sudo apt-get install libreoffice -
Настройте свойство приложения jmix.reports.office-path, установите путь к LibreOffice:
jmix.reports.office-path = /usr/lib/libreoffice/program -
Если на сервере не установлен оконный интерфейс, LibreOffice запустится с ошибкой
Caused by: java.awt.HeadlessException: No X11 DISPLAY variable was set, but this program performed an operation which requires itили просто завершит работу без сообщений об ошибках. Чтобы решить эту проблему, установите свойство приложения jmix.reports.display-device-available:jmix.reports.display-device-available = false -
Вы можете выполнить следующую команду для диагностики ошибок при запуске LibreOffice:
$ strace -e trace=signal /usr/lib/libreoffice/programs/office.bin --headless --accept="socket,host=localhost,port=8100;urp" --nologo --nolockcheck
|
Для пользователей Ubuntu, которые установили tomcat с помощью После этого следует изменить владельца этой папки:
|
Для macOS
-
Скачайте приложение на www.libreoffice.org.
-
Установите приложение.
-
В свойстве приложения jmix.reports.office-path укажите путь к LibreOffice.app, например:
jmix.reports.office-path = /Applications/LibreOffice.app/Contents/MacOS
Пересчет формул LibreOffice при загрузке
Настройка LibreOffice Calc, находящаяся в разделе Tools > Options > LibreOffice Calc > Formula > Recalculation on File Load, управляет тем, как LibreOffice обрабатывает пересчет формул при открытии файла электронной таблицы (например, отчета XLSX).
По умолчанию LibreOffice может не пересчитывать формулы автоматически при открытии файла, чтобы ускорить загрузку, особенно для больших и сложных электронных таблиц. Это может привести к ситуациям, когда формулы отображают устаревшие результаты до тех пор, пока пользователь вручную не инициирует пересчет (например, нажав F9 или отредактировав ячейку).
Установка параметра Recalculation on File Load в значение Always recalculate заставляет LibreOffice пересчитывать все формулы каждый раз при открытии файла. Это гарантирует, что отображаемые значения всегда актуальны, но может увеличить время открытия файла, особенно для больших или сложных в вычислительном отношении электронных таблиц. Таким образом, эта настройка представляет собой компромисс между скоростью открытия и точностью данных. Хотя она решает проблему устаревших результатов формул в большинстве случаев, стоит учитывать последствия для производительности очень больших файлов.