как узнать какие команды объекта конфигурации задействованы в командных интерфейсах
Командный интерфейс
Командный интерфейс — это основное средство навигации пользователя по функциональности конфигурации. В системе 1С:Предприятие он строится на основе подсистем. Разработчик должен создать в конфигурации иерархию подсистем, отражающую для пользователя структуру функциональности прикладного решения.
Все прикладные объекты конфигурации (справочники, документы, отчеты и т. д.) привязываются разработчиком конфигурации к подсистемам. Иерархия подсистем должна отражать структуру функциональности именно так, как она будет представляться пользователю.
Уже на основе этой информации (структуры подсистем и привязки объектов к подсистемам) платформа автоматически строит командный интерфейс для пользователя. Пользователю отображается структура прикладного решения (иерархия подсистем) и предоставляются стандартные команды доступа к функциональности прикладных объектов (вызов списков справочников, документов, открытие отчетов, обработок и т. д.). Однако разработчик, разумеется, может отредактировать предлагаемое системой построение командного интерфейса (изменить порядок, видимость команд). Для этого предназначен целый ряд редакторов командного интерфейса, которые позволяют настраивать различные части интерфейса программы.
Сами команды, включаемые в командный интерфейс (открытие списков, ввод новых объектов, открытие отчетов и т. д.), предоставляются системой автоматически. Но разработчик может создать свои команды, которые будут включаться в командный интерфейс. Для этого у прикладных объектов в метаданных появилась новая ветка — Команды.
Управление интерфейсом
Декларативная модель построения интерфейса позволяет автоматически адаптировать интерфейс для конкретного пользователя. Для этого предусмотрено несколько возможностей.
Автоматический учет ролей / прав
Прежде всего, система автоматически учитывает при построении интерфейса права пользователя. Например, из командного интерфейса исключаются команды для доступа к объектам, которые пользователю недоступны.
Если для роли Продавец назначены только права, необходимые для ввода и проведения документа Поступление товаров, а также для просмотра справочников Товары, Контрагенты и работы с календарем, то все недоступные объекты автоматически исключается системой из командного интерфейса.
Кроме того, в системе существует возможность установки прав на отдельные реквизиты объектов. Используя эту информацию, система сама исключает или делает недоступными для редактирования соответствующие поля в формах, а также исключает колонки из списков и отчетов.
Видимость по умолчанию
Для различных интерфейсных элементов системы (команд, элементов формы) настраивается видимость по умолчанию для отдельных ролей. Это позволяет, в зависимости от ролей пользователя, предоставить ему наиболее важную часть функциональности, оставляя возможность включения видимости тех элементов, которые изначально для него не отображаются.
Функциональные опции
Механизм функциональных опций позволяет определить в конфигурации ту функциональность, которая может использоваться или не использоваться при внедрении в зависимости от потребностей конкретной организации. Различные элементы конфигурации (объекты, реквизиты, команды) могут быть привязаны к функциональным опциям. При внедрении можно управлять включением и выключением функциональных опций в конкретной информационной базе. Система при этом будет автоматически включать и выключать отображение всех соответствующих элементов интерфейса (полей, команд, колонок списков, элементов отчетов). Подробнее…
Пользовательская настройка
Стандартной возможностью, которая предоставляет система пользователю, является настройка внешнего вида командного интерфейса. Возможна настройка всех основных элементов интерфейса: панели разделов, начальной страницы и панели функций текущего раздела.
Авторы: В.А. Ажеронок, А.В. Островерх, М.Г. Радченко, Е.Ю. Хрусталева
Командные интерфейсы 1С
Командный интерфейс 1С — это часть пользовательского интерфейса, предназначенная для выполнения команд и навигации по прикладному решению. Это основное средство навигации пользователя по функциональности конфигурации.
В системе 1С:Предприятие командный интерфейс строится на основе подсистем. Разработчик должен создать в конфигурации иерархию подсистем, отражающую для пользователя структуру функциональности прикладного решения.
Особенности построения командного интерфейса 1С:
На основе информации о структуре подсистем и привязке объектов к подсистемам платформа автоматически строит командный интерфейс для пользователя.
Разработчик может отредактировать предлагаемое системой построение командного интерфейса (изменить порядок, видимость команд). Для этого предназначен ряд редакторов командного интерфейса, которые позволяют настраивать различные части интерфейса программы, и которым относятся:
Сами команды, включаемые в командный интерфейс (открытие списков, ввод новых объектов, открытие отчетов и т. д.), предоставляются системой автоматически. Но разработчик может создать свои команды, которые будут включаться в командный интерфейс. Для этого у прикладных объектов в метаданных присутствует ветка «Команды».
Декларативная модель построения интерфейса позволяет автоматически адаптировать интерфейс для конкретного пользователя. Для этого предусмотрено несколько возможностей.
Автоматический учет ролей / прав
Система автоматически учитывает при построении интерфейса права пользователя. Например, из командного интерфейса исключаются команды для доступа к объектам, которые пользователю недоступны.
Если для роли «Продавец» назначены только права, необходимые для ввода и проведения документа РасходТовара, а также для просмотра справочников Товары и Контрагенты, то все недоступные объекты автоматически исключается системой из командного интерфейса.
Кроме того, в системе существует возможность установки прав на отдельные реквизиты объектов. Используя эту информацию, система сама исключает или делает недоступными для редактирования соответствующие поля в формах, а также исключает колонки из списков и отчетов.
Видимость по умолчанию
Для различных интерфейсных элементов системы (команд, элементов формы) настраивается видимость по умолчанию для отдельных ролей. Это позволяет, в зависимости от ролей пользователя, предоставить ему наиболее важную часть функциональности, оставляя возможность включения видимости тех элементов, которые изначально для него не отображаются.
Функциональные опции
Механизм функциональных опций позволяет определить в конфигурации ту функциональность, которая может использоваться или не использоваться при внедрении в зависимости от потребностей конкретной организации. Различные элементы конфигурации (объекты, реквизиты, команды) могут быть привязаны к функциональным опциям. При внедрении можно управлять включением и выключением функциональных опций в конкретной информационной базе. Система при этом будет автоматически включать и выключать отображение всех соответствующих элементов интерфейса (полей, команд, колонок списков, элементов отчетов). Подробнее…
Пользовательская настройка интерфейса 1С
Стандартной возможностью, которая предоставляет система пользователю, является настройка внешнего вида командного интерфейса. Возможна настройка всех основных элементов интерфейса: панели разделов, начальной страницы и панели функций текущего раздела.
Редактор командного интерфейса конфигурации
Редактор командного интерфейса конфигурации — это один из инструментов разработки, предназначенный для настройки:
Вызвать редактор командного интерфейса конфигурации можно командой контекстного меню в корне конфигурации:
Для изменения порядка разделов используются кнопки командной панели или контекстное меню.
Если подсистем много, а требуется настроить видимость только для некоторых из них, то подсистемы можно отобрать по ролям. Например, показать только те подсистемы, которые доступны для роли «Продавец».
При большом количестве ролей можно настроить состав колонок, отображаемых в редакторе. Для этого используется стандартная настройка списка, которая вызывается командой «Настройка списка…» из контекстного меню.
Редактор командного интерфейса основного раздела
Редактор командного интерфейса основного раздела предназначен для настройки команд начальной страницы. Для панели команд текущего раздела он позволяет задать^
Редактор командного интерфейса
Редактор командного интерфейса — это один из инструментов разработки, предназначенный для настройки команд какой-либо подсистемы.
Редактор командного интерфейса позволяет настроить:
Серый флажок в видимости команды по ролям означает, что видимость определяется общей настройкой.
Вызвать редактор командного интерфейса можно разными способами, например:
Для изменения порядка команд используются кнопки командной панели или контекстное меню.
Если подсистем много, а требуется настроить видимость только для некоторых из них, то подсистемы можно отобрать по ролям. Например, показать только те команды, которые доступны для роли «Продавец».
Если есть необходимость работать только с теми командами, которые видны для выбранной роли, можно нажать кнопку «Скрыть невидимые по умолчанию». Тогда в списке останутся только те команды, которые будут отображены в интерфейсе выбранной роли.
При большом количестве ролей можно настроить состав колонок, отображаемых в редакторе. Для этого используется стандартная настройка списка, которая вызывается командой «Настройка списка…» из контекстного меню.
Добавить комментарий Отменить ответ
Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.
Программирование в 1С для всех
В предыдущей статье мы научились создавать подсистемы 1С, а в этой статье научимся, как при помощи подсистем можно настраивать интерфейс пользовательского приложения.
Ссылка на предыдущую статью: подсистемы в 1С.
Для написания статьи я использовал учебную базу из книги «Основы разработки в 1С: Такси» со следующими подсистемами.
Свойство конфигурации «Командный интерфейс»
Мы можем самостоятельно конфигурировать расположение подсистем в пользовательском режиме. Делается это в свойстве конфигурации «Командный интерфейс». Для того, чтобы попасть в это свойство, необходимо вызвать контекстное меню конфигурации (выделить самый верхний узел конфигурации, и вызвать правой кнопкой мышки контекстное меню), в этом контекстном меню интересует команда «Свойства».
После выполнения команды «Свойства» контекстного меню, откроется палитра свойств конфигурации, где нас интересует свойство «Командный интерфейс».
После нажатия гиперссылки «Открыть» этого свойства, откроется окно командного интерфейса. В этом окне мы можем передвигать иконки подсистем, настраивать общее отображение (колонка Видимость), и настраивать отображение по ролям (колонка соответствующей роли).
Заметьте, у колонок ролей могут быть «серые» флажки, это значит, что если у роли установлен такой «серый» флажок, то для данной роли у подсистемы будет такая же видимость, которая установлена в колонке Видимость.
В этом случае роль Администратор будет видеть подсистему Закупки
Если мы отключим видимость подсистемы в свойстве Командный интерфейс, то ее в пользовательском режиме по умолчанию видно не будет (мы отключили подсистему Закупки).
Но пользователь, может включить её. Для этого нужно зайти в настройку панелей разделов.
Для платформы версий 8.15 и выше
Для платформы версий ниже 8.15.
И в открывшемся окне «Настройка панелей разделов», при помощи кнопки «Добавить» переместить нужный раздел в список «Выбранные раздел». В этом же списке вы можете перемещать разделы между собой по своему усмотрению.
Если же мы хотим, чтобы подсистема вообще не была доступна пользователю. То необходимо отключить у нужной роли право на просмотр этой подсистемы.
Для этого открываем дополнительные настройки отключаемой для роли подсистемы.
В этих дополнительных настройках нас интересует закладка Права, где у нужной роли необходимо снять флаг с права Просмотр.
После этого, пользователь не увидит эту подсистему, и не сможет добавить её, используя настройку панелей разделов.
Командный интерфейс подсистемы
Мы можем настраивать видимость нужной нам подсистемы при помощи командного интерфейса. Есть два способа попасть в командный интерфейс подсистемы.
Используя кнопку «Командный интерфейс» в редакторе подсистемы.
Используя команду «Открыть командный интерфейс» контекстного меню подсистемы.
В командном интерфейсе подсистемы по умолчанию существует всего 6 групп: три группы команд навигации (панель навигации), и три группы команд действий (панель действий).
Вы можете перемещать команды навигации между группами команд навигации, и перемещать команды действий между группами команд действий. Но команду навигации нельзя переместить в группу команд действий. И наоборот, команду действия нельзя переместить в команду навигации.
Перемещать команду внутри группы можно при помощи кнопок контекстного меню (для этого нужно выделить нужную команду).
После перемещения команды, в названии группы команд появится словосочетание «Ручной порядок».
Если вы хотите вернуть расположение команд, как было по умолчанию, то необходимо выделить нужную группу, вызвать контекстное меню и выполнить команду «Восстановить автоматический порядок».
Если вы хотите, чтобы команда располагалась в другой группе, то можно мышкой «перетащить» эту команду в нужную группу.
Или воспользоваться командной «Переместить команду». Для этого нужно выделить перемещаемую команду и, или вызвать контекстное меню, где расположена команда.
Или воспользоваться иконкой команды на верхней панели.
После выполнения команды «Переместить команду», откроется окно выбора групп команды, где нужно выбрать группу, в которую вы хотите переместить команду.
После тех или иных действий, команда переместится в нужную группу.
В командном интерфейсе подсистемы имеются также колонка Видимость и колонки видимости по ролям.
Флажки в этих колонках отвечают за видимостью команд подсистемы.
Если флаг снят у соответствующей команды в колонке Видимость, то пользователь не увидит эту команду в интерфейсе подсистемы. У колонок ролей имеется возможность установить «серый» флаг. Это значит, что видимость этой команды для данной роли будет такая, какая установлена по умолчанию в колонке «Видимость».
Например, в этом случае, роль не будет видеть команду.
В случае остальных состояний флага, все точно также как и для колонки Видимость.
Стоит флаг – пользователь с этой ролью видит команду.
Флаг снят – не видит.
Если у вас обычный (не «серый») флаг у колонки видимости роли (снят или установлен), то не играет ни какой роли состояние флага в колонке Видимость!
Но в тоже время, если видимость на какую-либо команду снята в командном интерфейсе подсистемы в конфигураторе 1С, то её можно установить обратно в пользовательском режиме.
Для этого необходимо зайти либо в настройки навигации, либо в настройки действий подсистемы в пользовательском режиме, в зависимости от того видимость какой команды (навигации или действий) вы хотите установить.
Откроется окно настроек, где можно переместить выбранную команду или при помощи кнопки «Добавить», или мышкой.
После перемещения команды
Она появится в командном интерфейсе подсистемы.
Команда «Все подсистемы»
У разработчика имеется возможность посмотреть на командный интерфейс всех подсистем сразу. Для этого необходимо выделить корневой узел ветки Подсистемы, вызвать контекстное меню, в котором выполнить команду «Все подсистемы»
После этого откроется окно «Все подсистемы», где вы можете работать со всеми подсистемами сразу.
Заметьте, если у подсистемы имеются подчиненные подсистемы, то в этом окне вы можете посмотреть, как всё выглядит в иерархии. На скрине выше это наглядно показано. Что нельзя сделать в командном интерфейсе отдельной подсистемы.
Также, в этом окне вы можете редактировать состав нужной вам подсистемы.
В остальном настройки похожи: можно перемещать команды между группами внутри подсистемы, устанавливать видимость и т.д.
Другие статьи по вопросам конфигурирования
Подробно вопросы разработки подсистем рассмотрены в книге «Основы разработки в 1С: Такси. Разработка управляемого приложения за 12 шагов». Эта книга станет настоящим подспорьем для тех, кто только начал знакомиться с разработкой управляемого приложения.
Книга «Основы разработки в 1С: Такси» отлично подойдёт тем, кто уже начал программировать и испытывает определенные сложности с этой темой и тем, кто уже давно программирует, но ни разу еще не работал с управляемыми формами 1С
Промо-код на скидку в 15% — 48PVXHeYu
Изучайте программирование в 1С в месте с моей книгой «Программировать в 1С за 11 шагов»
Эти книги плюс книга по программированию оперативного учета имеются в едином комплекте: комплект книг по разработке в 1С.
Только для читателей моего блога,
промо-код на скидку в 300 рублей на весь комплект: blog
Если Вам понравился этот урок, был полезен или помог решить какую-нибудь проблему, то Вы можете поддержать мой проект, перечислив любую сумму:
можно оплатить вручную:
Яндекс.Деньги — 410012882996301
Web Money — R955262494655
Почему мой справочник не видно в интерфейсе?
Несмотря на кажущуюся простоту вопроса, с подобной проблемой рано или позно сталкивается практически любой разработчик, когда вдруг он не видит в интерфейсе того, что ожидал. Например, какого-то раздела, или команды перехода к списку справочника.
Сначала проверим раздел. Убедимся что:
Если в составе команд нет вашей стандартной команды объекта, значит для объекта отключено использование стандартных команд (см. п.1 ниже).
Если в составе команд нет команды, созданной в конфигурации, значит, ей не назначена группа (см. п.2 ниже).
Если для команды назначена не группа подсистемы, а какая-то группа формы, то для того, чтобы команда стала доступна в интерфейсе форм необходимо задать еще и тип параметра этой команды (см. п.2 ниже).
5. Если в конфигурации созданы пользователи, и им назначены определенные роли, то убедимся, что в правах пользователя разрешено использование той подсистемы, к которой относится искомый объект, и всех вышестоящих по иерархии подсистем. Для этого откроем окно редактирования роли (например, Менеджер по закупкам ), которая назначена пользователю, под именем которого будет происходить работа с прикладным решением.
В нашем случае подсистема не связана ни с одной из функциональных опций. Это значит, что отображение подсистемы в интерфейсе не будет зависеть от значения функциональной опции в прикладном решении.
7. В заключение, в режиме 1С:Предприятие проверим, что раздел, к которому относится искомый объект, и все вышестоящие по иерархии разделы, не отключены пользовательскими настройками панели разделов.
Вернуться к настройкам, выполненным в конфигураторе, можно с помощью команды Все действия – Установить стандартные настройки в окне настройки панели разделов.
Теперь проверим все, что относится к самому объекту:
1. Что для искомого объекта разрешено использование стандартных команд. Для этого вызовем контекстное меню справочника Контрагенты и откроем палитру его свойств.
Иначе команда будет недоступна в командном интерфейсе, а параметризованная команда будет недоступна для включения в командный интерфейс форм, соответствующих ее параметру.
4. Откроем окно редактирования роли (например, Менеджер по закупкам ) и проверим, что в правах этой роли разрешено использование искомой команды. Если речь идет о стандартной команде (например, открытия списка справочника) – нужно проверить права на сам объект.
Если речь идет о нестандартной команде (например, Печать ) – нужно проверить права на эту команду.
6. В заключение, в режиме 1С:Предприятие проверим, что команда не отключена пользовательскими настройками.