Имя: Пароль:
1C
1С v8
Конвертация данных из 8.1 в 8.3 , перенос перечислений
,
0 Евгения_1985
 
16.10.19
08:45
Здравствуйте. Бьюсь уже третий день, не могу понять в чем проблема.
Конвертация данных 2.1.8, есть описание метаданных базы на 8.1 и базы на 8.3.
мне нужно перенести тестовый справочник( я создала его для решения этой проблемы), в нем только стандартный реквизит Наименование и реквизит с типом Перечисление "СтатусЗаявки".
Этот справочник с такой же структурой есть в конфигурации на 8.3.
Проблема в том, что у меня не переносятся значения перечислений из 8.1 в 8.3.
Не могу понять в чем дело, ПКО и ПКЗ для перечисления заполнены, пробовала через обработчики событий решить проблема - не получилось, видимо не то делаю.
При выгрузке по правилам обмена пишет след.ошибку :

Ссылка на несуществующий объект метаданных в правилах обмена
    Объект                 =  Статус заявки
    ОписаниеОшибки         =  Значение не является значением объектного типа (ПКО)
    ПозицияМодуля          =  ВнешняяОбработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(2175)
    КодСообщения           =  11

Начало выгрузки:   16.10.2019 13:36:39

Не найдено соответствие для значения Источника
    Источник               =  Зарегистрирована
    ТипИсточника           =  Статус заявки

Не найдено соответствие для значения Источника
    Источник               =  Запланирована
    ТипИсточника           =  Статус заявки

Не найдено соответствие для значения Источника
    Источник               =  Ошибочная
    ТипИсточника           =  Статус заявки



Помогите, пожалуйста, почему все остальные реквизиты переносятся (код, наименование), а значения перечислений нет...
1 vicof
 
16.10.19
09:34
Есть вкладка значения в правилах переноса перечислений. Там указывается какое в какое переносить.
2 Евгения_1985
 
16.10.19
12:06
Я там делала сопоставление, все равно,
Решила так: удалила ПКО для перечислений и ПКС соответственно тоже, в ПКС для реквизита СтатусЗаявки справочника Заявки(тот самый тестовый мой справочник), в обработчике ПередВыгрузкой прописала в лоб значения перечисления,
Если Источник.СтатусЗаявки = Перечисления.СтатусыЗаявко.Закрыта, тогда значение = "Закрыта"
    Иначе Если ....

КонецЕсли;

И ЗАРАБОТАЛО!!
Непонятно правда что ему не нравилось по нормальному из перечисления в перечисление конвертировать.
Я думаю вся проблема в том, что с 8.1 на 8.3, потому что такую же задачу я делала с 8.2 на 8.3 и там нормально перечисления перенеслись...
3 Ёпрст
 
16.10.19
12:16
(2) это не играет никакого значения, версия платформы тут не при чем
4 Ёпрст
 
16.10.19
12:16
ошибка в самих правилах обмена
5 Ёпрст
 
16.10.19
12:17
Тем более, вам ясно указана ошибка - для значений конкретного вида перечисления не создано сопоставление в ПКО для перечисления.. и всё.
6 fgaabbb
 
16.10.19
12:20
нужно сделать ПКО для перечисления, в нем ПКЗ - правило конвертации значений. Перечисления не переносятся, они сопоставляются.
к примеру, в одной  базе перечисление Пол - Муж и Жен, а в другой Мужской Женский. Делаете соответствие, что Муж сопоставляется с Мужской, Жен с Женский, тогда будет работать
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс