Настройки отчетов в файле конфигурации

Настройки ссылок

Для включения или отключения настройки (по умолчанию включена), которая позволяет выгружать гиперссылки на объект при экспорте кастомного отчета в XLSX выполните скрипт в БД инстанса:

UPDATE "CaseMap"."Settings" SET "Value" = 'true' /*'false'*/ WHERE "Key" = 'ExportExcelLinkEnabled'

Для отображения ссылок на объект в настроенных системных отчетах добавлены дополнительные настройки столбцов для отображения отчет. В таблице с метаданными столбцов отчета присутствуют следующие колонки:

  • IsHidden — признак отображения столбца при предпросмотре отчета (значения: true/false).
  • LinkType — тип ссылки на объект (значение: ProjectLink).
  • EntityIdColumnId — идентификатор колонки, в которой указывается идентификатор объекта. Идентификатор необходим для формировании ссылки на объект.

Пример запроса добавления метаданных столбцов со ссылками на объект:

INSERT into "CaseMap"."FixedColumns" ("Order", "Name", "Type", "FixedReportId", "IsHidden", "LinkType")
VALUES
        (0, 'ProjectId',    'Guid',    fixedReportId, true,  null),
        (1, 'ProjectName',  'String',  fixedReportId, false, 'ProjectLink');
 UPDATE "CaseMap"."FixedColumns"
    SET "EntityIdColumnId" = (SELECT "Id" FROM "CaseMap"."FixedColumns" WHERE "Name"
 = 'ProjectId' AND "FixedReportId" = fixedReportId)
    WHERE "Name" = 'ProjectName' AND "FixedReportId" = fixedReportId;

Отображение значений логических полей

Для настройки вида отображения значений полей с типом Логическое и Чекбокс в скачанном отчете в формате XLSX или CSV используется настройка IsExportExcelBooleanValuesEnabled (по умолчанию включена) в секции Custom файла appsettings.json:

  • Если настройка включена, значения полей с типом Логическое и Чекбокс будут отображаться как Да или Нет.
  • Если настройка выключена — true или false.
  • Настройка доступна для переопределения.
{"Custom": {
    "IsExportExcelBooleanValuesEnabled": true
  }
}

Настройка ширины колонок

Для настройки ширины колонок в системных отчетах с предпросмотром в таблице CaseMap.FixedColumns в поле Size укажите ширину колонок в пределах от 1 до 6. Если значение ширины колонки для системных отчетов не задано, параметр ширины колонки будет установлен по умолчанию, в зависимости от содержимого колонки (аналогично кастомным отчетам).

Версионирование системного отчета

Для версионирования системного отчета, если эти настройки должны переноситься с помощью модуля, измените значение в поле Version: GUID в таблице CaseMap.ReportMetatadas для записи нового идентификатора отчета:

update "CaseMap"."ReportMetadatas"
set "Version" = NEWID() -- or uuid_generate_v4() for PostgreSQL
where "Id" = 'report_id'

Контролировать и инкрементировать версию отчета в процессе разработки и при поддержке системного отчета необходимо при добавлении или изменении:

  • Самого отчета — CaseMap.ReportMetatadats.
  • Связанных сущностей — изменение или добавление новых записей в таблицах CaseMap.FixedReport, CaseMap.FixedFilters и CaseMap.FixedColumns.
  • На стороне UI — настройка прав, добавление или изменение шаблона отчета.

Настройка формата скачивания системных отчетов без предпросмотра

Доступно выбрать формат скачивания системных отчетов без предпросмотра (*.xslx или *.csv):

  • Параметры в БД — в таблице FixedReports в колонке ExportFormat можно указать формат скачивания отчета:
    • 0 — *.xslx (по умолчанию)
    • 1 — *.csv, при выборе отчет будет скачан в архиве <Название отчета>.zip, внутри которого расположен файл <Название отчета>.csv
  • В файле настройки конфигурации предусмотрены параметры:
    • Enable2GbLimitsForCsvReports — выбор значения:
      • true — будет недоступно скачать отчеты, у которых несжатый объем данных превышает 2 Гб
      • false — доступно скачать отчеты в формате *.csv, превышающие 2 Гб (отчет будет формироваться на диске, чтобы избежать ограничения 2 Гб)
    • CsvFixedReportsTempFolderPath — папка на диске, внутри которой будет формироваться отчет (сформированный файл временный, в конце процесса он будет удален)
    • MaxReportCompressedSizeInMb — максимальный размер в Мб, по умолчанию — 500 Мб (при превышении отобразится ошибка: Итоговый объем файла не должен превышать {0} Мб):
      • Архива с *.csv отчетом (для системных отчетов)
      • Отчета в формате *.csv
      • Отчета в формате *.xslx (итоговый размер отчета)
    • MaxReportCellsCount — максимальное количество ячеек в отчете:
      • Значение по умолчанию — 40 млн.
      • При превышении максимального значения отображается ошибка: Количество ячеек в отчете не должно превышать {XX}

При скачивании больших системных отчетов рекомендуется:

  • Изменить формат выгрузки системного отчета без предпросмотра на *.csv с помощью запроса:

UPDATE [CaseMap].[FixedReports]
SET [ExportFormat] = 1
WHERE [Id] = '<Id системного отчета>'

  • Установить значение false в параметре Enable2GbLimitsForCsvReports.
  • Изменить при необходимости значения параметров: MaxReportCompressedSizeInMb и MaxReportCellsCount.