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

Для включения или отключения настройки (по умолчанию включена), которая позволяет выгружать гиперссылки на объект при экспорте кастомного отчета в 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 — настройка прав, добавление или изменение шаблона отчета.