jsreport#
Описание#
Сервис jsreport предназначен для работы с отчетами jsreport.
Note
Опциональный элемент системы. API доступно только внутри инфраструктуры серверной части lexema8.
Настройки сервиса отчетов jsreport#
Note
Раздел applications { jsreport { }} конфигурационного файла ./config/production.js
- protocol - используемый веб-протокол (рекомендуемое `http`).
- host - имя хоста (рекомендуемое `localhost`).
- port - порт для запуска (рекомендуемое - 3070).
- route - используемый маршрут (по умолчанию `/api/v2.0/jsreport`).
- timeout - количество миллисекунд бездействия, после которого считается, что время ожидания истекло (по умолчанию 120). В режиме продакшена может потребоваться дополнильно настроить таймаут для веб-сервера (nginx).
- script - путь к модулю, запускающему сервис (рекомендуемое `ecosoft-lexema8-jsreport-service`).
- editor - настройки редактора отчета.
- port - порт для запуска (по умолчанию 3069).
- protocol - протокол (по умолчанию `http`).
- core - настройки библиотеки jsreport-core для сервиса отчетов. Редактор отчетов использует только настройки раздела extensions.
- store - настройки для хранения отчетов.
- provider - задает один из возможных вариантов для хранения отчетов. Доступно только значение `fs` (хранение в файловой системе).
- templatingEngines - настройки компоненты, выполняющей задачи рендеринга.
- strategy - стратегия для рендеринга отчетов. Доступные значения: `dedicated-process`, `http-server`, `in-process` (по умолчанию `in-process`).
- extensions - словарь используемых модулей для сервиса отчетов и редактора (редактор некоторые модули может подключать со своими настройками). Ключом является имя модуля, значением - объект с настройками (если необходимо использовать настройки по умолчанию, то необходимо передать пустой объект). При подключении модуля необходимо установить соответствующий пакет. Имя пакета формируется из имени модуля, с добавлением префикса `jsreport-` (например, при подключении модуля jsrender имя пакета будет `jsreport-jsrender`). Чтобы отключить модуль, укажите в его настройках свойство `enabled` со значением false (Пример: `xlsx: {enabled: false}`) и удалите соответствующий пакет в файле package.json.
- fs-store - хранение отчетов в файловой системе.
- syncModifications - сброс кэша при изменении отчета (по умолчанию false). В редакторе отчетов эта настройка всегда передается со значением false.
- chrome-pdf - создание pdf-отчетов с использованием headless chrome. Для этого модуля требуется установка пакета puppeteer (убедитесь, что в package.json в разделе dependencies прописан пакет puppeteer. Пропишите, если он отсутствует. В проекте прикладной библиотеки пакет puppeteer должен быть прописан в разделе devDependencies).
- launchOptions - настройки запуска.
- args - массив аргументов (по умолчанию `['--no-sandbox']`).
- handlebars - движок для описания макета шаблона (по умолчанию {}).
- text - создание текстовых отчетов (по умолчанию {}).
- xlsx - создание excel-отчетов (по умолчанию {}).
- html-to-xlsx - создание excel-отчетов из html (по умолчанию {}).
- templates - хранение и поиск шаблонов (по умолчанию {}).
- child-templates - использование вложенных шаблонов (по умолчанию {}).
- assets - встраивание статических ресурсов, таких как стили, шрифты или HTML (по умолчанию {}).
- data - возможность привязки данных к шаблону (по умолчанию {}).
Значения для параметров protocol, host, port, script не определены по умолчанию, для работы с сервисом jsreport их необходимо установить в конфигурационном файле конечного приложения.