XSQUAREREPORTS

Разрабатывай отчеты
как ты привык!
Проектируй шаблоны печатных форм сразу в привычных MS Office/ Мой Офис, Р7 офис. Не нужно дополнительного дизайнера печатных форм

Запуск

  • REST API (xml/json)
  • 1 команда для установки - yum install xreports
  • 5 параметров для настройки
  • 10 минут и первый отчет готов

Окружение

  • Нативная генерация XLSx, DOCx, PDF без сторонних библиотек и фреймворков. 100% своя разработка.
  • 15 МБ RAM для работы 10-ти HTTP клиентов
  • Любая RPM/DEB based операционная система
  • Любая архитектура - X86/ARM/Эльбрус/Байкал

Производительность

  • 10 000 отчетов за минуту в конкурентном режиме
  • Запись 1 млн строк в XLSx за 15 секунд
  • Пакетная генерация документов на основе одного шаблона
  • Быстрый нативный парсинг шаблонов
  • Объединение PDF документов

Архитектура решения

Архитектура XREPORT

Пример вызова сервиса генерации XLSx

Пример вызова сервиса

Для формата XML
curl --request POST --data-binary "@templates/examples/xlsx/base_example_xml.xml" http://localhost:8087/excel_report_xml
Для формата JSON
curl --request POST --data-binary "@templates/examples/xlsx/base_example.json" http://localhost:8087/excel_report_json

Структура ответа

Формат ответа (JSON или XML) может быть задан двумя способами:

  1. В HTTP заголовке Accept. Поддерживаемые значения: application/json и application/xml.
  2. В теле запроса в элементе (объекте) response-format. Поддерживаемые значения: json и xml.

Приоритет имеет формат, указанный в теле запроса.

Ответ сервиса содержит объект в формате JSON или XML, который включает:

  1. Описание ошибки (код ошибки, сообщение об ошибке). В случае успешного ответа сервиса возвращается значение null.
  2. Результат (закодированный в BASE64 файл документа отчета в формате xlsx).

Формат ответа

{ "error": { "code": 1, "message": "Error message." } "result": "[base64 encoded xlsx file]" }

Пример ответа

{ "error": null, "result": "UEsDBBQACAAIAPdKo...JwAAAAA=" }

Пример для формата JSON

{ "template": { "uri": "local", "id": "template_example_1" }, "input-data": { "ORGANIZATION": "АО «Наименование»", "TAG_IN_HEADER_TEST": "Пример верхнего колонтитула", "TAG_IN_FOOTER_TEST": "Пример нижнего колонтитула", "CONDITIONAL_TAG_TRUE": "true", "CONDITIONAL_TAG_FALSE": "false", "TABLE-NO-FORMAT": { "header": [ "№ п/п", "№ дела в Арбитражном суде", "Период задолженности", "Основной долг, руб. с НДС", "Проценты, руб.", "Госпошлина, руб.", "Неустойка по решению суда", "Общая сумма погашения, руб.", "Срок погашения, не позднее" ], "rows": [ [ "1", "А12-1234/2030", "Октябрь 2017", "12 345,58", null, "23 456,00", "78 912,41", null, "31.08.2019" ] ] }, "TABLE-FORMATTED": { "rows": [ { "номер_пп": "1", "номер_договора": "Пример номера 1", "район": "Пример района 1", "предприятие": "Пример предприятия 1", "дата_отключения": "Пример даты 1", "адрес": "Пример адреса 1", "комплексное_поле": "Пример суммы 1" } ] }, "images": { "IMAGE-1-JPEG": { "data": "/9j/4AAQSkZJRgABAQEAYABgAAD...igAooAKKACigAooAKKACigD//Z" }, "IMAGE-2-JPEG": { "data": "/9j/4AAQSkZJRgABAQEAYAB...AooAKKACigAooAKKACigAooA//9k=" } } }, "options": { "enable-debug-report-save": true, "formatting": { "tables": { "enable-cells-auto-merge": true } } } }
Преимущества

Привычное окружение

Проектируйте шаблоны документов в привычных MS Office, Мой Офис и Р7-Офис без дополнительного дизайнера печатных форм

Гибкость

Унифицированные запросы в формате JSON или XML позволяют использовать любые источники данных

Скорость

Сервер отчетов параллельно обрабатывает множество клиентских запросов и быстро формирует отчеты

Простая интеграция

REST API позволяет легко интегрировать сервер отчетов в любую IT-систему, а встроенный генератор запросов позволит быстро начать работу

Кроссплатформенность

Сервер отчетов поддерживает архитектуры x86-64, ARM и E2K

QR-код генератор

Генерируем популярные QR-коды в JPEG и PNG, а также встраиваем их в документы на лету

Универсальность

Сервер отчетов поддерживает популярные форматы документов: DOCX, XLSX и PDF

Функциональность

  • формирование документов DOCX, XLSX, PDF
  • пакетная генерация документов на основе одного шаблона,
  • формирование печатной формы PDF документа
  • заполнение PDF Forms
  • объединение PDF документов
  • экспорт данных из XLS/XLSX в CSV, JSON, XML

Мы можем так

select * from XLSx.Sheet1. А также XLS, DBF. А Вы?

Процесс генерации отчетов
Process 1

Создавайте шаблон документа в привычном формате.

Редактируйте шаблоны там , где Вам удобно: WORD / EXCEL / P7 Office/ Мой офис/ Libre Office

Формируйте попиксельную верстку PDF документов с помощью команд PDF генератора

Process 2

Создавайте запрос в унифицированном формате в файлах JSON или XML. Благодаря этому источником данных для заполнения шаблонов может быть ваша база данных, веб-страницы, веб-формы, а также сторонние сервисы.

Использование единого сервера отчетов позволяет унифицировать все документы в организации.

Process 3

В результате сервис сформирует готовый документ в необходимом формате: DOCX, XLSX, PDF, CSV и т.д.

Подготовка шаблона занимает пару минут и может в любое время редактироваться без привлечения разработчиков.

Сервер отчетов это:
Сервис формирования отчетов из документа-шаблона в формате DOCX по HTTP-запросу в формате JSON или XML
Функциональные возможности:
  • парсинг шаблонов в формате DOCX;
  • замена тегов в шаблоне подстановочными данными из запроса;
  • генерация таблиц на основе данных из запроса;
  • динамическая генерация содержимого с использованием шаблонных и условных блоков;
  • вставка изображений, на основе данных из запроса;
  • генерация штрих-кoдов и QR-кoдов;
  • генерация многостраничного документа на основе одного шаблона и массива входных данных; добавление/изменение метаданных;
  • сохранение результата в формате DOCX, либо конвертация в PDF;
Функциональные возможности:
  • парсинг шаблонов в формате XLSX;
  • замена тегов в шаблоне подстановочными данными из запроса;
  • генерация таблиц на основе данных из запроса;
  • динамическая генерация содержимого с использованием шаблонных блоков;
  • вставка гиперссылок, формул, разрывов страниц;
  • замена изображений в шаблоне подстановочными данными из запроса;
  • генерация штрих-кодов и QR-кодов;
  • генерация многостраничного документа на основе одного шаблона и массива входных данных;
  • добавление/изменение метаданных;
  • сохранение результата в формате XLSX, либо конвертация в PDF;
Функциональные возможности:
  • парсинг XLS / XLSX файлов;
  • экспорт данных из документа в один из целевых форматов с учетом параметров запроса
Функциональные возможности:
  • использование страниц из PDF документов в качестве шаблонов;
  • замена тегов в шаблоне подстановочными данными из запроса;
  • генерация таблиц, на основе данных из запроса;
  • генерация графических примитивов;
  • вставка изображений, на основе данных из запроса;
  • вставка гиперссылок, использование условных выражений;
  • генерация штрих-кoдов и QR-кoдов;
  • сохранение результата в формате PDF;
Функциональные возможности:
  • парсинг входных PDF документов;
  • генерация документа с объединенным содержимым;
  • сохранение результата в формате PDF;
Функциональные возможности:
  • парсинг входного PDF документа;
  • генерация таблицы подписантов на последней странице;
  • генерация колонтитула с краткой информацией о документе на промежуточных страницах документа;
  • сохранение результата в формате PDF;
Функциональные возможности:
  • парсинг шаблона PDF Forms;
  • заполнение элементов формы подстановочными данными из запроса;
  • сохранение результата в формате PDF в режиме редактирования форм, либо только чтение;
Функциональные возможности:
  • парсинг шаблонов DOCX, XLSX, PDF, PDF Forms;
  • генерация запросов в формате JSON;
  • быстрая проверка генерации документа;
Среда исполнения

Оборудование:

  • RAM - 20Mb
  • CPU - 1 Core
  • HDD - 50Mb

Операционные системы:

Совместимо с
  • Astra Linux
  • RED OS
  • Alt Linux
  • ROSA
Любые rpm/deb based OS
  • Ubuntu 20+
  • Red Hat 8+
  • Debian 10+

Архитектуры:

  • x86-64
  • ARM (в том числе байкал)
  • e2k Эльбрус
Кто воспользовался сервером отчетов XREPORTS
ГазфондВТБ НПФАльянс НПФНациональный ПФБлагосостояние НПФОткрытие НПФВодоканал КалининградаАрзамас ВодоканалЯкутск ВодоканалКиров ВодоканалНижний Новгород Водоканал

Лицензионное соглашение

Передача прав на использование программного обеспечения производства ООО "Хи-Квадрат" для конечного пользователя на коммерческое использование осуществляется на основании Лицензионного соглашения

Лицензии на использование обеспечения необходимо приобретать у официальных партнеров.