Перенос реквизитов ТЧ с помощью КД3

1. Kudus 03.02.25 16:19 Сейчас в теме
Всем доброго времени суток!
В целях обучения дорабатываю обмен между ЕРП и ЗУП. Решил добавить реквизит в ТЧ Контактная информация справочника "Физические лица". Переносить реквизит решил с помощью добавления в расширяемый xdto пакет. С отправлением из ЕРП проблем не возникает, но при загрузке в ЗУП, если реквизит ссылочного типа, возникает ошибка

Содержание файла xml отправленного из ЕРП:
Скрытый текст

Доработки по расширению формата прикрепил скриншотами.

Код по доработке модуля менеджера обмена в ЗУП:

&ИзменениеИКонтроль("ДобавитьПКО_Справочник_ФизическиеЛица_Получение")
Процедура кд_ДобавитьПКО_Справочник_ФизическиеЛица_Получение(ПравилаКонвертации)

	ПравилоКонвертации = ОбменДаннымиXDTOСервер.ИнициализироватьПравилоКонвертацииОбъекта(ПравилаКонвертации); 
	#Вставка
	ПространствоИмен = "http://v8.1c.ru/edi/edi_ext_test/EnterpriseData/1.11";
	ОбменДаннымиXDTOСервер.ИнициализироватьРасширениеПравилаКонвертацииОбъекта(ПравилоКонвертации, ПространствоИмен);
	#КонецВставки
	ПравилоКонвертации.ИмяПКО                       = "Справочник_ФизическиеЛица_Получение";
	ПравилоКонвертации.ОбъектДанных                 = Метаданные.Справочники.ФизическиеЛица;
	ПравилоКонвертации.ОбъектФормата                = "Справочник.ФизическиеЛица";
	ПравилоКонвертации.ПриКонвертацииДанныхXDTO     = "ПКО_Справочник_ФизическиеЛица_Получение_ПриКонвертацииДанны­хXDTO";
	ПравилоКонвертации.ПередЗаписьюПолученныхДанных = "ПКО_Справочник_ФизическиеЛица_Получение_ПередЗаписьюПолучен­ныхДанных";
	ПравилоКонвертации.ВариантИдентификации         = "СначалаПоУникальномуИдентификаторуПотомПоПолямПоиска";
	СвойстваШапки = ПравилоКонвертации.Свойства;
	ДобавитьПКС(СвойстваШапки, "ДатаРегистрации",   "ДатаРегистрации");
	ДобавитьПКС(СвойстваШапки, "ДатаРождения",      "ДатаРождения");
	ДобавитьПКС(СвойстваШапки, "ИНН",               "ИНН");
	ДобавитьПКС(СвойстваШапки, "Код",               "КодВПрограмме");
	ДобавитьПКС(СвойстваШапки, "Наименование",      "ФИО");
	ДобавитьПКС(СвойстваШапки, "Пол",               "Пол", , "ПолФизическогоЛица");
	ДобавитьПКС(СвойстваШапки, "Родитель",          "Группа", , "Справочник_ФизическиеЛицаГруппа");
	ДобавитьПКС(СвойстваШапки, "СтраховойНомерПФР", "СтраховойНомерПФР");
	ДобавитьПКС(СвойстваШапки, "ФИО",               "ФИО"); 
	
	#Вставка
	ДобавитьПКС(СвойстваШапки, "МойКомментарий", "МойКомментарий", 1, , ПространствоИмен);
	#КонецВставки
	
	#Удаление
	СвойстваТЧ = ДобавитьПКТЧ(ПравилоКонвертации, "КонтактнаяИнформация", "КонтактнаяИнформация");
	#КонецУдаления
	#Вставка 
	СвойстваТЧ = ДобавитьПКТЧ(ПравилоКонвертации, "КонтактнаяИнформация", "КонтактнаяИнформация", ПространствоИмен);
	#КонецВставки
	ДобавитьПКС(СвойстваТЧ, "Вид",           "", 1);
	ДобавитьПКС(СвойстваТЧ, "ЗначенияПолей", "", 1);
	ДобавитьПКС(СвойстваТЧ, "Представление", "", 1);
	ДобавитьПКС(СвойстваТЧ, "Тип",           "", 1);
	#Вставка 
	ДобавитьПКС(СвойстваТЧ, "БанковскийСчет", "", 1, "Справочник_Контрагенты_Получение", ПространствоИмен);
	#КонецВставки
	
	ПравилоКонвертации.ПоляПоиска.Добавить("СтраховойНомерПФР,ЭтоГруппа");
	ПравилоКонвертации.ПоляПоиска.Добавить("ИНН,ЭтоГруппа");
	ПравилоКонвертации.ПоляПоиска.Добавить("ДатаРождения,ФИО,ЭтоГруппа");

КонецПроцедуры
Показать


При получении данных в ЗУП следующая ошибка:
Ошибка при анализе данных: Ошибка чтения объекта XDTO, имя свойства: <КонтактнаяИнформация>.

Ошибка чтения объекта XDTO, имя свойства: <БанковскийСчет>.

Поле объекта не обнаружено (БанковскийСчет)
{ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль(5439)}:Приемник[ИмяСвойства] = Значение;
{ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль(5120)}:КонвертироватьКлючевоеСвойство(Приемник, КомпонентыОбмена, ИмяСвойства, ТипЗначенияXDTO, ЗначениеXDTO);
{ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль(5347)}:КонвертацияСвойстваXDTOВЭлементСтруктуры(СтрокаXDTO, СвойствоСтрокиТЧ, СтрокаТЧ, КомпонентыОбмена, , СтрокаТипСвойства);
{ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль(5116)}:КонвертироватьТаблицуОбъекта(Приемник, КомпонентыОбмена, ИмяСвойства, Свойство, ТипЗначенияXDTO, ЗначениеXDTO);
{ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль(2420)}:КонвертацияСвойстваXDTOВЭлементСтруктуры(ОбъектXDTO, Свойство, Приемник, КомпонентыОбмена);
{ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль(6418)}:ДанныеXDTO = ОбъектXDTOВСтруктуру(ОбъектXDTO, КомпонентыОбмена);
{ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль(2144)}:ПрочитатьСообщениеОбмена(КомпонентыОбмена, Результаты, , Истина);
{Обработка.КонвертацияОбъектовXDTO.МодульОбъекта(598)}:ОбменДаннымиXDTOСервер.ПроизвестиЧтениеДанныхВРежимеАнализа(КомпонентыОбмена, ПараметрыАнализа);
{Обработка.ПомощникИнтерактивногоОбменаДанными.МодульМенеджера(566)}:ОбработкаОбменаДанными.ВыполнитьАнализСообщенияОбмена(ПараметрыАнализа);
{Обработка.ПомощникИнтерактивногоОбменаДанными.МодульМенеджера(640)}:ИнформацияСтатистики = ТаблицаСтатистикиСообщенияОбмена(ПараметрыАнализа,
{Обработка.ПомощникИнтерактивногоОбменаДанными.МодульМенеджера(17)}:Результат = РезультатАвтоматическогоСопоставленияДанных(
{(1)}:Обработки.ПомощникИнтерактивногоОбменаДанными.ВыполнитьАвтоматическоеСопоставлениеДанных(Параметры[0],Параметры[1])
{ОбщийМодуль.ОбщегоНазначения.Модуль(5952)}:Выполнить ИмяМетода + "(" + ПараметрыСтрока + ")";
{ОбщийМодуль.ДлительныеОперации.Модуль(1692)}:ОбщегоНазначения.ВыполнитьМетодКонфигурации(ИмяПроцедуры, ПараметрыВызова);
{ОбщийМодуль.ДлительныеОперации.Модуль(1671)}:ВызватьПроцедуру(ВсеПараметры.ИмяПроцедуры, ВсеПараметры.ПараметрыПроцедуры, ПараметрыВыполнения);

Предполагаю, что при получении данные почему то не работает расширение формата, но при переносе простых типов такой ошибки не возникает
Прикрепленные файлы:
По теме из базы знаний
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот