В процессе разработки на платформе 1С:Предприятие часто возникают ситуации, когда добавленные в конфигурацию Общие реквизиты не отображаются в форме нового документа, даже если этот документ был успешно включен в состав реквизита. Разберем, с чем это связано и как настроить платформу так, чтобы нужные поля появились там, где они необходимы.
Чтобы понять, почему реквизиты Автор, Комментарий или Ответственный не видны в форме, проанализируем настройки метаданных. Механизм общих реквизитов в 1С имеет строгую иерархию управления, которая состоит из двух уровней:
Автоиспользование): У каждого общего реквизита в дереве метаданных есть свойство Автоиспользование. Оно определяет поведение реквизита для всех объектов, включенных в его состав, если для них не задано иное поведение. Если здесь установлено значение Не использовать, то платформа по умолчанию не будет автоматически добавлять этот реквизит в новые объекты.Использование): Когда мы включаем документ в Состав общего реквизита, для каждого такого документа появляется настройка Использование. У нее может быть три состояния:
Автоматически: объект «смотрит» на глобальную настройку Автоиспользование общего реквизита.Использовать: реквизит принудительно включается в объект, независимо от глобальной настройки.Не использовать: реквизит принудительно исключается из объекта.Чаще всего проблема возникает именно при выборе значения Автоматически. Если у вас в новых документах реквизиты не появились, это означает, что глобальный параметр Автоиспользование установлен в Не использовать, а для конкретного документа выбрано правило Автоматически.
Давайте вместе проделаем следующие действия для исправления ситуации:
Конфигураторе.Общие -> Общие реквизиты.Комментарий) и посмотрите его свойство Автоиспользование в палитре свойств.Не использовать, у вас есть два пути:
Автоиспользование на Использовать. Это приведет к тому, что реквизит автоматически станет доступен во всех документах, для которых настроено Автоматически.Использование напротив нужного вам документа, принудительно выберите Использовать. Это перекроет глобальную настройку и «включит» реквизит именно для этого документа.Рассмотрев техническую сторону, важно остановиться на вопросе целесообразности использования общих реквизитов. В профессиональном сообществе разработчиков 1С существует мнение, что злоупотребление общими реквизитами может негативно сказаться на производительности системы.
Первоначально механизм Общих реквизитов создавался для задач разделения данных (Data Separation), необходимых для работы в облачных сервисах (SaaS). Когда мы используем их для «обычных» целей (добавление реквизитов во все документы подряд), мы усложняем структуру таблиц СУБД, что в крупных системах может приводить к замедлению работы при выполнении запросов.
Если вы хотите расширить функционал документа, рекомендуем рассмотреть следующие подходы, которые считаются более современными и гибкими:
Расширений. Это позволит вам внести изменения, не снимая основную конфигурацию с поддержки.Подводя итог, анализируйте каждый случай применения Общих реквизитов. Если задача требует массового добавления поля в сотни документов — этот механизм оправдан. Если же вам нужно добавить пару полей в один или несколько документов — лучше воспользоваться механизмом дополнительных реквизитов или расширений.