Переход с устаревшей системы УПП 1.3 на современные решения, такие как Комплексная автоматизация 2 или ERP Управление предприятием, — это сложный процесс, требующий глубокого понимания структуры метаданных. Одной из самых частых и неприятных проблем является ошибка: «Тип не является подмножеством типа значений плана видов характеристик». Эта ошибка обычно возникает в процессе загрузки данных, когда штатный механизм обмена пытается сопоставить свойства объектов из старой базы с новой архитектурой дополнительных реквизитов.
В этой статье мы подробно разберем, почему возникает этот конфликт, как на это влияют отраслевые решения (например, приставка Проф в именах справочников) и какие шаги необходимо предпринять, чтобы успешно завершить перенос остатков с характеристиками.
Проанализируем механику работы 1С. В УПП характеристики номенклатуры реализованы как справочник ХарактеристикиНоменклатуры, который может иметь свои свойства и категории. В современных конфигурациях (КА 2 / ERP) используется подсистема «Свойства» из состава БСП (Библиотеки стандартных подсистем). Центральным узлом здесь является план видов характеристик ДополнительныеРеквизитыИСведения.
Ошибка «Тип не является подмножеством...» сигнализирует о том, что правила обмена пытаются записать в объект ПланВидовХарактерик.ДополнительныеРеквизитыИСведения значение такого типа, который не разрешен в его настройках (в поле Тип значения). Рассмотрим подробнее ситуацию, описанную в теме: программа пытается передать ссылку на справочник характеристик, но ПВК в целевой базе «не знает» о существовании такого типа данных.
Если в вашей базе УПП встречаются объекты типа СправочникСсылка.Проф..., это явный признак того, что вы работаете не с чистой типовой конфигурацией, а с отраслевым решением (например, от «1С-Рарус» или «БИТ.ФИНАНС»). Штатные правила перехода, которые идут в комплекте с КА 2, рассчитаны исключительно на типовые объекты 1С:УПП 1.3.
Когда типовой алгоритм видит нестандартный справочник характеристик, он не может корректно сопоставить его с метаданными в КА 2. В итоге система пытается «протолкнуть» ссылку как есть, что и приводит к ошибке типизации на стороне приемника.
Прежде чем менять код правил, проверим функциональные опции в приемнике. Разберем по шагам:
КА 2 характеристики жестко привязаны к объекту Виды номенклатуры. Рассмотрим ситуацию: если вы загружаете номенклатуру, для которой не создан или не назначен соответствующий вид с включенным использованием характеристик, загрузка может завершиться аварией.Посмотрим на пример настройки вида номенклатуры: для успешного переноса индивидуальных характеристик из УПП в виде номенклатуры должен быть выбран вариант Индивидуальные для номенклатуры.
Если проблема в том, что целевая система не принимает тип данных, мы можем разрешить этот тип. Самый безопасный способ сделать это без снятия конфигурации с поддержки — использовать расширение.
Разберем алгоритм действий:
ДополнительныеРеквизитыИСведения.Однако помните, что это лишь «косметическое» решение, которое позволит данным загрузиться, но не гарантирует их корректную работу в бизнес-логике ERP.
Штатные правила часто являются лишь заготовкой. Если мы имеем дело с нетиповой УПП, нам придется открыть файл правил (обычно это UPP13_ERP2.xml) в конфигурации Конвертация данных 2.1.
Проанализируем ситуацию в обработчиках. Нам необходимо найти ПКО (Правило Конвертации Объекта) для характеристик и ПКС (Правила Конвертации Свойств), отвечающие за доп. реквизиты. Скорее всего, потребуется добавить следующий код в обработчик ПередЗагрузкой или ПоляПоиска, чтобы принудительно привести типы к ожидаемым:
// Пример корректировки типа в правилах
Если ТипЗнч(Значение) = Тип("СправочникСсылка.ПрофХарактеристики") Тогда
// Логика сопоставления с типовым справочником ХарактеристикиНоменклатуры
Значение = НайтиТиповуюХарактеристику(Значение);
КонецЕсли;
Выясним причину успеха «простого учета»: как упоминалось в обсуждении, простой учет переносит данные без ошибок, так как в нем не задействованы сложные иерархические связи свойств. Как только в УПП появляется использование дополнительных свойств характеристик, которые должны превратиться в доп. реквизиты в КА 2, штатные правила «ломаются».
Иногда ошибка вызвана наличием «битых» ссылок или объектов, помеченных на удаление, но все еще используемых в записях характеристик. Перед выгрузкой выполним следующие действия:
Рассмотренная проблема требует комплексного подхода. Мы выяснили, что ошибка чаще всего связана с использованием отраслевых подсистем (Проф) и жесткой проверкой типов в ПВК ДополнительныеРеквизитыИСведения. Для успешного переноса рекомендуем сначала подготовить НСИ в КА 2 (создать виды номенклатуры), а затем, если ошибка сохранится, внести точечные изменения в правила обмена через Конвертацию данных 2.1, адаптируя их под ваши уникальные метаданные.