Как в 1С настроить отображение подсистемы расширения и оставить пользователю только рабочий стол

Программист 1С v8.3 (Управляемые формы) 1С:Управление торговлей IT и автоматизация бизнеса
← На главную

При внедрении готовых модулей интеграции, например сервисов ЭТРН и ЭДО, поставляемых в виде расширений конфигурации, администраторы и разработчики часто сталкиваются с перегруженным интерфейсом. По умолчанию рядовые сотрудники видят множество служебных команд: загрузку МЧД, настройки узлов распределенных баз данных, сервисные утилиты и диагностику. В типовых решениях, таких как 1С:Управление торговлей 11, требуется оставить операторам только одно рабочее место, скрыв всё лишнее.

Разберем по шагам, почему стандартное отключение видимости в конфигураторе может скрывать раздел у всех пользователей, и проанализируем надежные варианты настройки интерфейса.

Почему при правке командного интерфейса раздел исчезает у всех

Выясним причину типичной ошибки, с которой сталкиваются при редактировании командного интерфейса подсистем в конфигураторе. В окне Командный интерфейс первая колонка флажков определяет видимость по умолчанию для всех пользователей без исключения. Если снять флаг в этой общей колонке, не настроив персональные колонки конкретных ролей, платформа 1С:Предприятие отключает отображение команды глобально.

Кроме того, в интерфейсе «Такси» действуют строгие правила отображения подсистем на панели разделов:

  1. Раздел отображается только тогда, когда у пользователя есть право Просмотр на саму подсистему.
  2. Внутри подсистемы пользователю должна быть доступна хотя бы одна команда, отчет, форма или журнал документов. Если права на все дочерние объекты у пользователя отсутствуют, платформа автоматически скрывает родительский раздел целиком.
  3. Если пользователь ранее вручную настраивал свою панель навигации или разделов в режиме предприятия, платформа использует сохраненные персональные настройки из системного хранилища. В таком случае изменения видимости по умолчанию из конфигуратора не применятся до выполнения команды Установить стандартные настройки.

Вариант 1. Выделение команды в отдельную подсистему

Рассмотрим решение, к которому пришли участники обсуждения: создание изолированной подсистемы для рабочего места оператора. Если в основном расширении поставщика рабочий стол находится в корневом разделе, мы можем явно разделить права и команды.

Разберем по шагам порядок действий:

  1. Открываем конфигуратор и переходим к ветке расширения.
  2. В ветке Подсистемы создаем новую подчиненную или отдельную подсистему, например РабочееМестоЭТРН.
  3. Включаем свойство Включать в командный интерфейс.
  4. В состав подсистемы добавляем только команду вызова формы Рабочий стол нужного сервиса, не включая служебные обработки и загрузки.
  5. В редакторе прав назначаем право Просмотр на новую подсистему только тем ролям, которые назначены обычным сотрудникам.
  6. У исходной служебной подсистемы снимаем право Просмотр для профилей рядовых пользователей, оставив его только администраторам.

Важное предостережение: если тиражное расширение обновляется разработчиком регулярно (раз в 1–2 недели), любые изменения его структуры при накатывании нового файла .cfe будут затираться. В таком случае потребуется повторное объединение метаданных.

Вариант 2. Разделение доступа через типовые профили групп доступа (БСП)

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

Рассмотрим, как настроить права штатными средствами 1С:Управление торговлей 11:

  1. Открываем программу в режиме 1С:Предприятие с правами администратора.
  2. Переходим в раздел Администрирование → Настройки пользователей и прав → Профили групп доступа.
  3. Создаем новый профиль, например Оператор ЭТРН.
  4. В списке доступных ролей находим роли расширения. Отмечаем только роль, дающую базовое право работы с рабочим местом (например, роль с правами использования основной обработки), и исключаем административные роли (настройку обмена, загрузку МЧД, администрирование узлов).
  5. Включаем пользователей в группу доступа с данным профилем.

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

Вариант 3. Тиражирование настроек интерфейса пользователям

Если расширение содержит только одну общую роль, открывающую доступ ко всем объектам сразу, мы можем скрыть лишние команды на уровне пользовательского интерфейса с помощью механизмов Библиотеки стандартных подсистем (БСП).

Разберем по шагам, как настроить эталонный интерфейс:

  1. Заходим в программу под эталонной учетной записью оператора.
  2. В главном меню переходим в Настройки → Настройка панели навигации (или Настройка панели разделов).
  3. Переносим из правой колонки в левую все нежелательные команды: загрузки, служебные обработки и регламентные процедуры, оставив только команду вызова рабочего стола. Нажимаем ОК.
  4. Переходим под учетной записью администратора в раздел Администрирование → Настройки пользователей и прав → Персональные настройки интерфейса (или обработка Копирование настроек).
  5. Выбираем эталонного пользователя в качестве источника и копируем настройки командного интерфейса на всех целевых сотрудников.

Вариант 4. Размещение рабочего стола на начальной странице

Рассмотрим альтернативный сценарий, при котором пользователям вообще не требуется открывать панель разделов сервиса интеграции. Если работа сотрудника сосредоточена вокруг единого рабочего места, его форму можно сделать стартовой.

  1. В режиме 1С:Предприятие открываем Главное меню → Настройки → Настройка начальной страницы.
  2. Добавляем форму рабочего стола расширения в правую или левую колонку начальной страницы.
  3. После сохранения форма будет автоматически открываться при каждом запуске программы.
  4. Копируем эту настройку начальной страницы остальным сотрудникам через инструмент администрирования настроек пользователей БСП.

Этот подход полностью снимает проблему случайного вызова оператором служебных функций и не требует модификации структуры метаданных конфигурации или расширения.

← На главную