Как найти и активировать дополнительные реквизиты в УТ 11.5 после загрузки из УТ 10.3

Программист 1С v8.3 (Управляемые формы) 1С:Управление торговлей Управленческий учет Торговля и дистрибуция
← На главную

Переход с устаревшей конфигурации «Управление торговлей 10.3» на современную 11.5 — это не просто обновление, а полноценная миграция данных в совершенно иную архитектуру. Одной из самых частых проблем, с которыми сталкиваются специалисты после завершения типового переноса, является «исчезновение» или некорректное отображение свойств номенклатуры. В интерфейсе новой базы мы можем видеть зачеркнутые наименования реквизитов или вовсе пустые поля там, где в исходной базе были заполнены важные характеристики. Рассмотрим подробно, почему это происходит и как вернуть данные в рабочее состояние.

Анализируем причины проблемы

В конфигурации УТ 10.3 свойства и категории хранились в Плане видов характеристик (ПВХ) СвойстваОбъектов. В УТ 11.5 логика работы кардинально изменилась: теперь дополнительные реквизиты и сведения управляются через ПВХ ДополнительныеРеквизитыИСведения, который жестко связан со справочником НаборыДополнительныхРеквизитовИСведения.

Если после переноса вы видите, что названия реквизитов в карточке номенклатуры зачеркнуты, это сигнализирует о следующем: данные (значения) в табличной части объекта есть, но сам реквизит «потерял» связь с объектом. Программа видит, что в базе записано значение для свойства «Цвет», но в текущем Наборе свойств, назначенном данному Виду номенклатуры, это свойство отсутствует. Рассмотрим, как восстановить эти связи.

Шаг 1: Проверка общих настроек системы

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

  1. Перейдем в раздел НСИ и администрирование — Администрирование — Общие настройки.
  2. Развернем группу Дополнительные реквизиты и сведения.
  3. Проверим наличие флага на пункте Дополнительные реквизиты и сведения. Без этой галочки механизм работы со свойствами будет полностью заблокирован.

Если флаг установлен, но реквизиты в карточках товаров по-прежнему недоступны для редактирования или не отображаются в списке настроек, значит, проблема кроется в параметрах самих элементов ПВХ.

Шаг 2: Проверка состояния реквизитов через консоль запросов

Выясним причину «заблокированности» реквизитов. Как показывает практика, при типовом переносе некоторым служебным полям в Плане видов характеристик ДополнительныеРеквизитыИСведения могут быть присвоены неверные значения. Проанализируем следующие поля:

Если эти поля заполнены некорректно (например, НаборСвойств пуст), система не понимает, в какой момент и для какой номенклатуры нужно выводить данный реквизит.

Шаг 3: Исправление реквизитов с помощью групповой обработки

Для массового исправления флагов видимости и доступности воспользуемся стандартной обработкой «Групповое изменение реквизитов»:

  1. Выберем объект Дополнительные реквизиты и сведения.
  2. Настроим отбор по тем характеристикам, которые перенеслись из УТ 10.3.
  3. Установим значения для реквизитов Виден, Доступен и Дополнительные значения используются в состояние Да.
  4. В поле Набор свойств укажем ссылку на соответствующий набор (например, Номенклатура (Общие), если реквизиты должны быть видны у всех товаров).

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

Шаг 4: Программное восстановление наборов свойств

В сложных случаях, когда реквизитов много и они должны быть распределены по разным наборам (разным видам номенклатуры), потребуется написание небольшой обработки. Рассмотрим логику работы кода, который принудительно включает перенесенные свойства в нужный набор.

Ниже приведен пример алгоритма, который можно адаптировать под свои нужды. Основная задача — перебрать список свойств и добавить их в табличную часть Реквизиты соответствующего набора свойств номенклатуры.


// Пример логики заполнения набора свойств
Процедура ВосстановитьСвязиРеквизитов()
    
    // Определяем целевой набор (например, Общие для всей номенклатуры)
    НаборСсылка = Справочники.НаборыДополнительныхРеквизитовИСведения.Номенклатура_Общие;
    НаборОбъект = НаборСсылка.ПолучитьОбъект();
    
    // Список имен реквизитов, которые нужно «оживить»
    СписокСвойств = Новый СписокЗначений;
    СписокСвойств.Добавить("Бренд");
    СписокСвойств.Добавить("Сезон");
    СписокСвойств.Добавить("Материал");
    
    Для Каждого ЭлементСписка Из СписокСвойств Цикл
        
        ТекНаименование = ЭлементСписка.Значение;
        СвойствоСсылка = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию(ТекНаименование);
        
        Если НЕ СвойствоСсылка.Пустая() Тогда
            // Проверяем, нет ли уже такого реквизита в наборе
            СтрокаПоиска = НаборОбъект.Реквизиты.Найти(СвойствоСсылка, "Свойство");
            Если СтрокаПоиска = Неопределено Тогда
                НоваяСтрока = НаборОбъект.Реквизиты.Добавить();
                НоваяСтрока.Свойство = СвойствоСсылка;
            КонецЕсли;
            
            // Также корректируем служебные флаги самого свойства
            СвойствоОбъект = СвойствоСсылка.ПолучитьОбъект();
            СвойствоОбъект.Виден = Истина;
            СвойствоОбъект.Доступен = Истина;
            СвойствоОбъект.ДополнительныеЗначенияИспользуются = Истина;
            // Указываем владельца набора, чтобы свойство не было «сиротой»
            СвойствоОбъект.НаборСвойств = НаборСсылка; 
            СвойствоОбъект.Записать();
        КонецЕсли;
        
    КонецЦикла;
    
    НаборОбъект.Записать();
    Сообщить("Связи реквизитов успешно обновлены!");
    
КонецПроцедуры

Важные рекомендации по работе с перенесенными данными

При использовании программных методов исправления данных обязательно придерживайтесь следующих правил безопасности:

  1. Создание резервной копии: Любые манипуляции с Планом видов характеристик и Наборами свойств могут привести к непредсказуемым изменениям в отображении данных во всех карточках номенклатуры. Всегда делайте бэкап перед запуском обработок.
  2. Индивидуальная настройка: Если в вашей базе УТ 10.3 свойства были распределены по разным группам, в УТ 11.5 их также стоит разносить по разным Видам номенклатуры. Вместо использования набора Номенклатура_Общие, находите программно или вручную конкретный набор, соответствующий виду товара.
  3. Проверка справочника значений: Дополнительные реквизиты в УТ 11 часто имеют тип «Дополнительное значение». Это ссылка на подчиненный справочник. Если после активации реквизита список возможных значений (например, список всех Брендов) пуст, значит, при переносе не были созданы элементы в подчиненном справочнике значений свойств.

Рассмотренные шаги позволяют реанимировать механизм свойств после перехода с 10.3. Основная причина проблемы всегда кроется в «разрыве» метаданных: значения в базе есть, а описания их связи с объектом в справочнике НаборыДополнительныхРеквизитовИСведения — нет. Исправление этой связи через интерфейс (кнопка «Добавить из другого набора» в виде номенклатуры) или программно возвращает конфигурации возможность полноценно использовать аналитику по характеристикам.

← На главную