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

30.09.13

Разработка - Механизмы платформы 1С

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

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

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

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

Решение

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

 

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

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

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

Функциональные опции Изменение типовых конфигураций

См. также

Поинтегрируем: сервисы интеграции – новый стандарт или просто коннектор?

Обмен между базами 1C Администрирование СУБД Механизмы платформы 1С Платформа 1С v8.3 Бесплатно (free)

В платформе 8.3.17 появился замечательный механизм «Сервисы интеграции». Многие считают, что это просто коннектор 1С:Шины. Так ли это?

11.03.2024    4431    dsdred    53    

70

Как готовить и есть массивы

Механизмы платформы 1С Платформа 1С v8.3 Бесплатно (free)

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

24.01.2024    5271    YA_418728146    25    

62

Планы обмена VS История данных

Обмен между базами 1C Механизмы платформы 1С Платформа 1С v8.3 Бесплатно (free)

Вы все еще регистрируете изменения только на Планах обмена и Регистрах сведений?

11.12.2023    6389    dsdred    36    

111

1С-ная магия

Механизмы платформы 1С Бесплатно (free)

Язык программирования 1С содержит много нюансов и особенностей, которые могут приводить к неожиданным для разработчика результатам. Сталкиваясь с ними, программист начинает лучше понимать логику платформы, а значит, быстрее выявлять ошибки и видеть потенциальные узкие места своего кода там, где позже можно было бы ещё долго медитировать с отладчиком в поисках источника проблемы. Мы рассмотрим разные примеры поведения кода 1С. Разберём результаты выполнения и ответим на вопросы «Почему?», «Как же так?» и «Зачем нам это знать?». 

06.10.2023    18463    SeiOkami    46    

118

Дефрагментация и реиндексация после перехода на платформу 8.3.22

Механизмы платформы 1С Платформа 1С v8.3 Бесплатно (free)

Начиная с версии платформы 8.3.22 1С снимает стандартные блокировки БД на уровне страниц. Делаем рабочий скрипт, как раньше.

14.09.2023    12073    human_new    27    

74

Валидация JSON через XDTO (включая массивы)

WEB-интеграция Универсальные функции Механизмы платформы 1С Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

При работе с интеграциями рано или поздно придется столкнуться с получением JSON файлов. И, конечно же, жизнь заставит проверять файлы перед тем, как записывать данные в БД.

28.08.2023    8799    YA_418728146    6    

141

Внешние компоненты Native API на языке Rust - Просто!

Механизмы платформы 1С Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Внешние компоненты для 1С можно разработывать очень просто, пользуясь всеми преимуществами языка Rust - от безопасности и кроссплатформенности до удобного менеджера библиотек.

20.08.2023    6271    sebekerga    54    

94

Все скопируем и вставим! (Буфер обмена в 1С 8.3.24)

Механизмы платформы 1С Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Рассмотрим новую возможность 8.3.24 и как её можно эффективно использовать

27.06.2023    15959    SeiOkami    31    

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

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