При доработке типовых конфигураций (таких как «1С:ERP Управление предприятием», «Комплексная автоматизация» или «Управление торговлей») разработчики часто сталкиваются с ситуацией: в конфигураторе создан новый реквизит справочника, вынесен на форму элемента, конфигурация базы данных успешно обновлена, однако в режиме «1С:Предприятие» поле на форме отсутствует. Разберем по шагам, почему возникает эта проблема и как гарантированно отобразить реквизит.
В современных решениях на базе БСП архитектура справочников Партнеры и Контрагенты построена на использовании функциональных опций. В зависимости от настроек ведения учета (раздельный или совмещенный учет партнеров и контрагентов) система динамически определяет, какую именно форму нужно предоставить пользователю.
Если в конфигурации включен совмещенный режим, вместо стандартной ФормаЭлемента открывается специальная совмещенная форма (например, ФормаЭлементаПартнераИКонтрагента или форма помощника создания). Если добавить элемент только на базовую форму элемента, в интерфейсе он виден не будет, так как фактически открывается совершенно другой объект метаданных формы.
Проанализируем, как точно определить, какая форма открывается в режиме предприятия:
ПриСозданииНаСервере.В типовых конфигурациях в процедурах ПриСозданииНаСервере или ПриЧтенииНаСервере вызываются процедуры подсистем БСП и внутренних модулей управления интерфейсом. Эти процедуры могут программно изменять видимость целых групп, сворачивать страницы или управлять свойствами элементов в зависимости от прав доступа, вида партнера (клиент, поставщик, конкурент) или значений функциональных опций.
Если элемент был помещен внутрь группы, для которой в коде динамически устанавливается Видимость = Ложь, добавленный реквизит также будет скрыт. Для решения задачи переместим элемент в общую группу реквизитов или проверим код модуля формы на наличие переопределения видимости родительской панели.
Платформа «1С:Предприятие 8.3» сохраняет персональные настройки элементов формы для каждого пользователя (состав полей, их порядок, ширина колонок). Если пользователь ранее открывал форму и менял её состав через меню «Еще» — «Изменить форму», платформа применяет сохраненную схему, игнорируя новые элементы, появившиеся в конфигураторе.
Выполним проверку и сброс настроек:
Если реквизит имеет ссылочный тип данных (например, СправочникСсылка.ВидыЦен), платформа контролирует права доступа не только к самому справочнику-владельцу, но и к реквизиту и связанному справочнику:
Партнеры.ВидыЦен. Если у пользователя нет прав на просмотр типа данных, платформа автоматически скрывает соответствующее поле ввода.При частом динамическом обновлении конфигурации («демон-обновлении») клиентское приложение может использовать устаревший кэш управляемых форм. Для устранения проблемы перезапустим сеанс «1С:Предприятия» с ключом /ClearCache или очистим локальный каталог временных файлов пользователя.
Если требуется добавить реквизит типа СправочникСсылка.ВидыЦен без внесения изменений в типовую конфигурацию и снятия с поддержки, воспользуемся типовым функционалом БСП «Дополнительные реквизиты и сведения»:
Партнеры.