При переходе с платформы 1С:Предприятие 8.1 на версию 8.3 многие разработчики сталкиваются с неожиданной проблемой: созданный в дереве конфигурации объект Интерфейс никак не проявляет себя в режиме «Предприятие». Программа запускается с пустым окном, несмотря на то, что в настройках пользователя указан «Полный» интерфейс, а сама конфигурация кажется настроенной правильно. Давайте разберем по шагам, почему старый подход больше не работает и как спроектировать современный интерфейс в управляемом приложении.
Проанализируем ситуацию. В старых версиях платформы (8.0, 8.1, 8.2 в режиме обычного приложения) интерфейс рисовался вручную. Разработчик буквально конструировал главное меню: создавал ветки, прописывал команды и привязывал их к интерфейсам. В управляемом приложении 1С 8.3 концепция радикально изменилась. Теперь интерфейс — это не статичная картинка, а динамическая структура, которая строится автоматически.
Выясним главную причину: объект Интерфейс оставлен в ветке конфигурации исключительно для обратной совместимости. Если вы запускаете «Тонкий клиент» или «Веб-клиент» (что является стандартом для 8.3), платформа полностью игнорирует эти объекты. Вместо них используется механизм Командного интерфейса, который базируется на Подсистемах.
Рассмотрим, как правильно создать меню в современной конфигурации. Основным инструментом здесь выступают подсистемы. Если мы хотим, чтобы в верхней части программы (в панели разделов) появились кнопки, нам необходимо создать соответствующие объекты в ветке Общие -> Подсистемы.
Выполним следующие действия для настройки:
Важный нюанс: платформа 1С придерживается принципа «не показывать лишнего». Если подсистема пустая или в ней нет объектов, на которые у текущего пользователя есть права, она будет автоматически скрыта. Проанализируем этот момент подробнее в следующем шаге.
Даже если мы создали подсистемы и включили их в интерфейс, пользователь может увидеть пустое окно. Это происходит из-за системы безопасности. Для того чтобы интерфейс отобразился, необходимо соблюдение двух условий в метаданных:
Если вы создаете самописную конфигурацию «с нуля», не забудьте создать роль (например, «ПолныеПрава»), отметить в ней право «Просмотр» для всех нужных подсистем и объектов, а затем назначить эту роль пользователю в базе данных.
Теперь разберем, как управлять порядком и видимостью разделов. Для этого в 1С 8.3 существует специальный инструмент. Нажмем правой кнопкой мыши на корень конфигурации (самая верхняя строка в дереве метаданных) и выберем пункт Открыть командный интерфейс конфигурации.
В открывшемся окне мы увидим список всех наших подсистем первого уровня. Здесь мы можем:
Рассмотрим подробнее также Командный интерфейс рабочего стола. Это отдельная зона, которая теперь называется «Начальная страница». Здесь настраивается то, что пользователь видит сразу после авторизации: формы текущих задач, важные отчеты или журналы документов.
Посмотрим на ситуацию, когда интерфейс должен меняться динамически в зависимости от настроек программы. В 8.3 для этого применяются ФункциональныеОпции. Например, если в константе «ИспользоватьНесколькоСкладов» стоит значение Ложь, то целые команды или поля в формах могут автоматически исчезать.
Если в вашей конфигурации настроены функциональные опции, обязательно проверьте, включены ли они. В противном случае интерфейс может оказаться «обрезанным» независимо от настроек подсистем и ролей.
Выясним последнюю техническую деталь. Если вы все же хотите использовать старые интерфейсы из 8.1, вам придется переключить всю конфигурацию в режим «Обычное приложение». Сделать это можно в свойствах конфигурации, установив параметр Основной режим запуска в значение «Обычное приложение».
Однако помните, что это путь назад. Для полноценного использования возможностей 8.3 (таких как мобильный клиент, облачные технологии и современные формы) следует использовать именно управляемое приложение и настраивать интерфейс через подсистемы.
Подведем итог нашему исследованию. Чтобы в пустой конфигурации 8.3 появился интерфейс, выполним следующие шаги:
Подсистема.Роль, в котором разрешим просмотр подсистемы и справочника.Роль.Следуя этой методике, вы сможете гибко настраивать рабочее пространство для различных категорий пользователей, используя все преимущества современной платформы 1С.