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