КД 3.0 Синхронизация нового реквизита табличной части документа

1. finebird 07.08.17 06:53 Сейчас в теме
Добрый день!

В базе "Управление торговлей 11" в табличную часть " товары" документа "Реализация товаров и услуг" добавил новый реквизит "ПартияТовара" (это ссылка на документ "Поступление товаров и услуг". Как в конвертации данных 3.0 этот реквизит табличной части синхронизировать с реквизитом "Документ оприходования" в табличной части "Товары" документа "Реализация товаров и услуг" в базе "Бухгалтерия предприятия 3.0"?

Я попробовал использовать AdditionalInfo, но проблема в том, что когда я передаю ссылку на документ, то в базе "Бухгалтерия предприятия 3.0" мне нужно при загрузке мне нужно прописать код поиска этой ссылки.

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

Может кто сталкивался с таким.
По теме из базы знаний
Найденные решения
2. MaxS 2826 07.08.17 08:19 Сейчас в теме
Если передавать реквизиты объекта, можно сделать примерно так:
Процедура ПКО_МойДокумент_ПриОтправкеДанных(ДанныеИБ, ДанныеXDTO, КомпонентыОбмена, СтекВыгрузки)
	ДанныеXDTO.Вставить("AdditionalInfo", Новый Структура(Номенклатура", Строка(ДанныеИБ.Владелец.УникальныйИдентификатор())));
КонецПроцедуры


Процедура ПКО_МойДокумент_Получение_ПриКонвертацииДанныхXDTO(ДанныеXDTO, ПолученныеДанные, КомпонентыОбмена)
	Если ДанныеXDTO.Свойство("AdditionalInfo") И ТипЗнч(ДанныеXDTO.AdditionalInfo)=Тип("Структура") Тогда
		ДанныеXDTOСтруктура = ДанныеXDTO.AdditionalInfo;
	Иначе
		Возврат;
	КонецЕсли;
	
	ДанныеИБСтруктура = Новый Структура("Номенклатура,ЧтоТоЕщё");
	ЗаполнитьЗначенияСвойств(ДанныеИБСтруктура, ДанныеXDTOСтруктура);
	
	Если ЗначениеЗаполнено(ДанныеИБСтруктура.Номенклатура) Тогда
		Номенклатура = ОбменДаннымиXDTOСервер.СсылкаОбъектаПоУИДОбъектаXDTO(ДанныеИБСтруктура.Номенклатура, Тип("СправочникСсылка.Номенклатура"), КомпонентыОбмена);
	КонецЕсли;
КонецПроцедуры
Показать


Если реквизиты табличной части, тут сложнее. Можно искать неиспользуемый реквизит формата и туда попытаться поместить ссылку и наименование, например "Документ.Мой". Потом на принимающей стороне обязательно в ПОД обработать этот объект - если наименование "Документ.Мой", тогда использовать ПКО моё, иначе ПКО типовое.
3. finebird 07.08.17 11:28 Сейчас в теме
Спасибо, Максим! Всё получилось!
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. MaxS 2826 07.08.17 08:19 Сейчас в теме
Если передавать реквизиты объекта, можно сделать примерно так:
Процедура ПКО_МойДокумент_ПриОтправкеДанных(ДанныеИБ, ДанныеXDTO, КомпонентыОбмена, СтекВыгрузки)
	ДанныеXDTO.Вставить("AdditionalInfo", Новый Структура(Номенклатура", Строка(ДанныеИБ.Владелец.УникальныйИдентификатор())));
КонецПроцедуры


Процедура ПКО_МойДокумент_Получение_ПриКонвертацииДанныхXDTO(ДанныеXDTO, ПолученныеДанные, КомпонентыОбмена)
	Если ДанныеXDTO.Свойство("AdditionalInfo") И ТипЗнч(ДанныеXDTO.AdditionalInfo)=Тип("Структура") Тогда
		ДанныеXDTOСтруктура = ДанныеXDTO.AdditionalInfo;
	Иначе
		Возврат;
	КонецЕсли;
	
	ДанныеИБСтруктура = Новый Структура("Номенклатура,ЧтоТоЕщё");
	ЗаполнитьЗначенияСвойств(ДанныеИБСтруктура, ДанныеXDTOСтруктура);
	
	Если ЗначениеЗаполнено(ДанныеИБСтруктура.Номенклатура) Тогда
		Номенклатура = ОбменДаннымиXDTOСервер.СсылкаОбъектаПоУИДОбъектаXDTO(ДанныеИБСтруктура.Номенклатура, Тип("СправочникСсылка.Номенклатура"), КомпонентыОбмена);
	КонецЕсли;
КонецПроцедуры
Показать


Если реквизиты табличной части, тут сложнее. Можно искать неиспользуемый реквизит формата и туда попытаться поместить ссылку и наименование, например "Документ.Мой". Потом на принимающей стороне обязательно в ПОД обработать этот объект - если наименование "Документ.Мой", тогда использовать ПКО моё, иначе ПКО типовое.
3. finebird 07.08.17 11:28 Сейчас в теме
Спасибо, Максим! Всё получилось!
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)