Новая возможность
Помните эти макеты, которые можно выбрать в каждом отчете отдельно?
В платформе 8.3.22 появилась возможность указать основной макет, который будет применяться во всех отчетах, в которых этот параметр не переопределен.
И обычно на этом упоминание новой возможности заканчивается... Ведь не особо удобно устанавливать всем пользователям разом какой-то непривычный макет да ещё и свойством конфигурации без возможности изменения расширением. Мало возможностей.
Но если внимательно читать список изменений, то оказывается, что нам добавили ещё и новый объект платформы для программного изменения основного макета:
В новой возможности можно:
- Установить программно общий основной макет оформления. Он будет применен поверх того макета, который установлен в свойствах конфигурации.
- Установить программно основной макет для конкретного пользователя. То есть если раньше пользователь, который любит макет оформления "Античный", вручную устанавливал его во всех используемых отчетах (а потом ещё и актуализировал свои варианты, которые могут измениться в конфигурации), то теперь это можно сделать разом одной строчкой кода и даже без необходимости перезапуска сеанса. Согласитесь, это куда лучше расширения =)
Инструмент для управления оформлением
На скриншоте пример инструмента, который позволяет в режиме предприятия:
- Установить общий основной макет оформления для всех пользователей
- Установить основной макет оформления для себя (текущего пользователя)
- Если вы администратор, то появляется возможность установить макеты оформления для других пользователей. Т.е. администрировать настройки в базе.
Инструмент просто использует описанные выше возможности. Вы можете сделать такой же сами, или же скачать его.
Ссылка на инструмент на GitHub
Нюансы
Однако, у новой возможности есть и нюанс.
Основной макет оформления будет применяться для всех формирований СКД.
Это значит, что если вы где-то программно формируете табличный документ при помощи СКД, то он окрасится в выбранный для пользователя макет. Даже если предполагалось, что это какая-то печатная форма =)
Решение проблемы - в таких случаях необходимо указывать в настройках СКД нужный макет оформления. Конечно, логично было бы так делать и раньше, но из-за отсутствия возможности переопределения основного оформления не все заморачивались
Есть ещё один небольшой нюанс. Если вызвать метод установки и передать в него имя несуществующего макета, то платформа не выдаст ошибок. И даже потом при получении имени макета будет возвращать переданную вами строку. Словно макет такой есть и установлен. А по факту пользователь просто получит стандартный отчет. И можно не узнать о проблеме, ведь это никак не проверяется на уровне платформы.
Ну и напоминаю, что можно в конфигурацию добавить полностью свой макет оформления отчетов и настроить его как душе угодно
Было интересно?
- Поддержите автора "плюсиком"
- Переходите на другие статьи
- Смотрите полный обзор новых возможностей платформы