Пример подхода к доработке полузакрытой конфигурации. Сервис внешнего управления сеансами

Клиент обратился с просьбой доработать конфигурацию «Сервис внешнего управления сеансами«.

Там можно вводить политики управления по базе и пользователю, можно по базе и группе пользователей, но нельзя по группе баз и пользователю. Поэтому приходилось вручную для каждой базы дублировать правила.

Кроме того, было желание отключать временно политики.

Я сразу решил, что буду использовать расширение, чтобы в случае выхода нового релиза клиенту не пришлось мучиться с обновлением.

В конфигурации я встретил закрытый модуль:

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

Архитектурные решения были следующими:

  1. Сделал справочник «Список баз» для возможности подбора баз в списки.
  2. Сделал справочник «Групповые политики», где можно указать политику для списка баз и имени пользователя.
  3. Вместо групп пользователя использую имя пользователя, т.к. оно одинаковое во всех базах клиента.
  4. В справочнике «Групповые политики» добавил галочку для включения/выключения групповой политики.
  5. В конфигурации политики — это регистр сведений, поэтому сделал привязку записи регистра сведений политики к элементу групповой политики.
  6. При включении групповой политики создаются записи в регистре политик, при выключении — удаляются. Все очень просто.
  7. Также в типовой справочник групп пользователей добавил колонку, которая бы показывала, к какой базе относится пользователь. При одинаковых наименованиях отсутствие колонки было критичным.

Такое решение позволило сделать элегантную надстройку над конфигурацией, не меняя логики ее работы, но привнося несомненное удобство в использовании.

Надеюсь, разработчики внесут пожелания клиента в очередной релиз.

К сожалению, клиент передумал реализовывать доработки, т.к. отказался на некоторое время от использования конфигурации, т.к. нашел другой способ решения задачи — через ограничение прав и работу со скриптами Обновлятора. Но решение мне понравилось и я решил поделиться им с Вами!

На картинке аватарка разработчика конфигурации:

fixin

Программирую на 1С с 1999 года. В 1С просто Гений. В 2020 году ушел из офиса на вольные хлеба фриланса. Принимаю заказы.

Читайте также:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *