Книга: Разработка интерфейса прикладных решений на платформе "1С:Предприятие 8"
Назад: Глава 1.7. Влияние функциональных опций на командный интерфейс
Дальше: Отключаем неиспользуемые команды

Механизм функциональных опций

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

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

Для описания функциональных опций используются объекты конфигурации Функциональные опции и Параметры функциональных опций. Эти объекты располагаются в узлах ветки Общие дерева конфигурации (рис. 1.108).

Рис. 1.108. Объекты конфигурации «Функциональные опции» и «Параметры функциональных опций»

Каждая функциональная опция в свойстве Состав хранит состав объектов конфигурации, которые зависят от функциональной опции, и в свойстве Хранение содержит объект, являющийся источником значения опции (рис. 1.109).

Рис. 1.109. Свойства объекта «Функциональная опция»

В зависимости от установленного для функциональной опции значения система включает в командный интерфейс (или исключает из него) команды объектов конфигурации, относящихся к этой опции.

Состав объектов конфигурации, относящихся к функциональной опции, можно задать на закладке Состав окна редактирования объекта конфигурации или воспользоваться гиперссылкой Открыть свойства Состав палитры свойств (см. рис. 1.109).

ПРИМЕЧАНИЕ

Список объектов, которым можно назначить функциональные опции, приведен в документации «1С:Предприятие 8.3.10. Руководство разработчика», раздел 5.5.10.4.

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

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

В связи с тем, что функциональные опции отвечают на вопрос: «Использовать объект конфигурации или нет?» – их значения чаще всего имеют тип данных Булево.

ПРИМЕЧАНИЕ

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

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

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

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

Для параметризации функциональных опций используется объект конфигурации Параметр функциональных опций. Каждый из параметров определяет отдельную «координату» хранения значений функциональных опций. При этом один и тот же параметр может одновременно использоваться для параметризации нескольких функциональных опций.

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

Назад: Глава 1.7. Влияние функциональных опций на командный интерфейс
Дальше: Отключаем неиспользуемые команды