gifts2017

Добавление реквизита своего объекта в состав типовой функциональной опции

Опубликовал AZel84 (AZel84) в раздел Программирование - Практика программирования

Что делать, если нужно в типовой конфигурации добавить свой реквизит в состав функциональной опции?

Постановка задачи

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

Например мы добавили в типовую конфигурацию «Управление торговлей 11» новый документ, у которого есть реквизит «организация». Нам нужно, чтобы при выключенной функциональной опции «ИспользоватьНесколькоОрганизаций» на форме нашего документа не отображался реквизит – организация.

Решение

Функциональные опции действуют следующим образом. Указывается место хранения, в данном случае это константа типа булево. Описывается состав функциональной опции. Например указано, что в состав опции входит реквизит «организация» документа «Реализация товаров и услуг». Если константа имеет значение «Ложь», то реквизит на форме документа не отображается, точнее его не будет в составе реквизитов формы. Платформа это делает автоматически.

 

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

Мы создаём свою новую функциональную опцию. Называем её, например, «Доп_ИспользоватьНесколькоОрганизаций». Хранение указываем аналогичное – константа «ИспользоватьНесколькоОрганизаций». В состав включаем реквизит «Организация» нашего нового документа. Свою опцию включаем в свою подсистему, которая может не отображаться.

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

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Константин Куликов (Светлый ум) 30.09.13 17:39
Так держать земеля.
AlX0id; AZel84; +2 Ответить
2. ivanov660 ivanov660 (ivanov660) 07.10.13 12:14
Ставлю плюс. Мне нравятся хорошие решения.
3. Михаил Ражиков (tango) 07.10.13 12:18
(0)
Нам не желательно изменять состав типовой функциональной опции
из каких соображений?
4. AZel84 (AZel84) 07.10.13 13:52
(3) tango, легче обновлять типовую конфигурацию с добавленными реквизитами или объектами метаданных, а не с изменёнными.
Поясните, если в этом случае считаете, что это не так.
cleaner_it; +1 Ответить 1
5. Марина Чирина (chmv) 07.10.13 14:01
6. Михаил Ражиков (tango) 07.10.13 18:01
(4) AZel84, состав - это не реквизит таблицы
7. AZel84 (AZel84) 07.10.13 18:33
(6) tango, хотите сказать, что если изменён состав функциональной опции, то при обновлении не возникнет проблем?
8. Михаил Ражиков (tango) 07.10.13 18:39
(7) AZel84, это "впечатление", а не результат целенаправленного наблюдения. так что на рельсы не покладусь
9. AZel84 (AZel84) 07.10.13 19:01
Во-первых, для изменения состава опции придётся включить возможность её изменения. А при добавлении своей опции, нужно снять с поддержки только верхний уровень метаданных.
Во-вторых, при обновлении добавленная функциональная опция не будет "мешаться", это понятно.

А вот что будет, если изменить состав типовой опции? Я не проверял, но думаю будет так. Если изменена опция новой конфигурации поставщика, то будет предложено либо заменить нашу опцию, либо не принимать изменения поставщика. Следовательно, придётся переносить изменения вручную.
10. Владимир Клименко (KliMich) 08.10.13 01:31
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа