В данном подразделе будет рассмотрен процесс создания простого отчета с помощью сервера отчетов. Для работы необходимо удостовериться, что установка сервера отчетов прошла успешно.
Для формирования отчета необходимо создать шаблон документа в формате DOCX или XLSX с помощью MS Word/Excel, Р7-Офис, LibreOffice Writer/Calc и т.п.
Шаблоны документов могут содержать теги, которые будут заменены входными данными из запроса. Тег задается в квадратных скобках. Пример: [задолженность]. Подробнее про создание шаблонов в формате DOCX и XLSX можно прочитать в разделе Сервис формирования отчетов из документа-шаблона.
Для первого отчета создадим простой шаблон в формате DOCX, который содержит несколько тегов: first_report_template.docx. Примеры более сложных шаблонов можно найти в разделе Примеры шаблонов.
Созданный шаблон размещаем на сервере в директории templates
, расположенной в директории приложения сервиса.
Примечание. Шаблоны страниц в формате PDF хранятся в директории templates/pdf
, расположенной в директории приложения сервиса.
Далее формируем HTTP-запрос.
Запрос для первого отчета в формате JSON будет выглядеть следующим образом: first_report.json. Документ-шаблон, созданный ранее, указан в атрибуте id
элемента template
. Примеры более сложных запросов можно найти в разделе Примеры запросов.
Примечание. Формат XML доступен только для формирования отчетов из документа-шаблона в формате DOCX или XLSX.
Для получения файла отчета используем Сервис формирования отчетов из документа-шаблона.
Для получения первого отчета на основе созданного шаблона DOCX используем URI http://localhost:8085/word_report_json.
Наименование сервиса | Сервис формирования отчетов из документа-шаблона в формате DOCX |
Путь к сервису | [host]:[port]/word_report_json |
Метод | POST |
Параметры |
Тело запроса должно содержать JSON объект:
где
Объект
Объект
Подробнее про структуру JSON можно прочитать в разделе Сервис формирования отчетов из документа-шаблона. В ответ сервис отдаёт файл документа отчета в формате DOCX, закодированный в base64. |
Назначение | Сервис предназначен для формирования отчетов из документа-шаблона в формате DOCX. Возможна конвертация в PDF. |
curl -X POST \
'http://localhost:8085/word_report_json' \
-H 'Content-Type: application/json' \
-d '{
"template":
{
"uri": "local",
"id": "first_report_template"
},
"input-data":
{
"ORGANIZATION": "АО «Пример»",
"DATE": "01.01.2023",
"EMP": "Иванов Иван Иванович"
},
"options":
{
"enable-debug-report-save": false,
"formatting": {
"tables": {
"enable-cells-auto-merge": true
}
}
}
}'
{
error: {
code:
message:
}
result: закодированный в base64 файл документа отчета в формате docx
}
{
"error": null,
"result": "UEsDBBQACAAIAPdKo...JwAAAAA="
}
В итоге получаем файл документа первого отчета в формате DOCX, закодированный в base64, или сообщение об ошибке.