Конвертация 3.0 Перенос данных, которых нет в формате обмена.

1. a a (asddsaas) 18.04.18 16:00 Сейчас в теме
Добрый день, коллеги!

Есть ли какой-нибудь трюк позволяющий перенести те данные табличной части, которых нет в формате? Например для реквизитов шапки можно (даже нужно) использовать объект формата AdditionalInfo. А что с табличными частями?

Я уже пробовал использовать AdditionalInfo. Создавал таблицу значений в обработчике ПриОтправкеДанных, заполнял ее и передавал в структуре через AdditionalInfo. Данные на стороне приемника я, конечно, получаю. В обработчике ПриКонвертацииДанныхXDTO я даже добавляю их в массив со строками, который потом вставляются в дополнительные свойства. Но объект в приемнике все равно заполняется только теми данными, которые есть в формате.

Пробовал организовать поиск объектов на стороне приемника передавая только данные для поиска, но все тщетно...
Может нужно как-то данные передать дальше? И заполнять их в обработчике ПередЗаписьюПолученныхДанных или ПослеЗагрузкиВсехДанных, хотя у них ведь другое назначение... Кажется я в небольшом тупичке)

Как кто выходил из такой ситуации? Поделитесь опытом, пожалуйста.
Найденные решения
3. Максим Сухов (MaxS) 1032 19.04.18 06:01 Сейчас в теме
В ПКС нужно указать реквизиты табличной части конфигурации + флаг "используется алгоритм".

Если хочется передать в ПередЗаписьюПолученныхДанных произвольные данные, то помещаем их в
ПолученныеДанные.ДополнительныеСвойства
Остальные ответы
2. Ирина progr-2008 Санкт-Петербург (progr-2008) 120 18.04.18 20:59 Сейчас в теме
(1)табличная часть ДополнительныеРеквизиты не поможет?
3. Максим Сухов (MaxS) 1032 19.04.18 06:01 Сейчас в теме
В ПКС нужно указать реквизиты табличной части конфигурации + флаг "используется алгоритм".

Если хочется передать в ПередЗаписьюПолученныхДанных произвольные данные, то помещаем их в
ПолученныеДанные.ДополнительныеСвойства
4. a a (asddsaas) 19.04.18 16:54 Сейчас в теме
(3) *рука лицо* Вы правы)) Закопался на столько что забыл про элементарное ПКС) Спасибо!
5. a a (asddsaas) 15.05.18 16:33 Сейчас в теме
(3) Появился еще один вопрос. Не буду создавать новую тему, спрошу тут.

Есть ПКО для справочника "Контрагенты". В процедуре ПриОтправкеДанных заполняю AdditionalInfo данными о партнере. Когда переношу элемент справочника "Контрагенты" на стороне приемника есть AdditionalInfo, но если переношу документ в котором есть поле контрагент, тогда в процедуре ПриКонвертацииДанныхXDTO AdditionalInfo отсутствует. Есть только ключевые свойства.

Подскажите, пожалуйста, как передать AdditionalInfo контрагента, если я переношу документ?
6. Максим Сухов (MaxS) 1032 15.05.18 17:12 Сейчас в теме
(5) В ключевых свойствах нельзя передать AdditionalInfo. Только в целиком выгруженном объекте. В документе контрагент выгружается в виде ключевых реквизитов.
Обычно согласовывают справочники, потом обмениваться документами.
asddsaas; +1 Ответить
7. a a (asddsaas) 16.05.18 11:56 Сейчас в теме
(6) Спасибо большое!

Есть еще вопрос о ПОД.
Пытаюсь перенести документ РКО с операцией "Выдача в другую кассу". В объектах формата не нашел подходящий, решил воспользоваться объектом Документ.РКОПрочийРасход.
Создал ПКС для объекта формата, все свойства с галочкой "Используется алгоритм конвертации". Создал ПОД. Сначала пользовался стандартной выборкой, потом указал произвольный алгоритм, в процедуре ВыборкаДанных написал запрос. Но отладчик не останавливается в процедуре ВыборкаДанных. Такое ощущение что процедура вообще игнорируется и никакой выборки не происходит.
Подскажите, пожалуйста, как можно организовать произвольную выборку и передать документ?
8. Максим Сухов (MaxS) 1032 16.05.18 18:27 Сейчас в теме
(7) А зачем произвольную выборку использовать? Создаёте свои ПКО и ПОД для отправки.
При получении нужно в ПОД поймать Ваш документ и указать какое ваше новое ПКО для него использовать.
9. a a (asddsaas) 17.05.18 15:22 Сейчас в теме
(8)
Создаёте свои ПКО и ПОД для отправки.


У меня есть ПОД для отправки РКО, в нем я определяю нужное ПКО в процедуре ПриОбработке.
В базе-источнике регистрирую изменения для нужного документа с операцией "Выдача в другую кассу". Ставлю точку останова в процедуре ПриОбработке. Отладчик не останавливается. Такое чувство что, ПКС не определяется и документ не отправляется. Тогда как, для других документов РКО (с операциями "Прочий расход" или "Возврат оплаты клиенту"), для которых определенны ПКС, отладчик останавливается.
После завершения синхронизации, в журнале регистрации появляется запись: Объектов обработано: 1.
Значит ли это, что документ был отправлен?
(8)
При получении нужно в ПОД поймать Ваш документ и указать какое ваше новое ПКО для него использовать.

Тут ситуация аналогичная. В ПОД точка останова не отрабатывает. После синхронизации, в журнале регистрации запись: Объектов обработано: 0.
10. Максим Сухов (MaxS) 1032 17.05.18 15:57 Сейчас в теме
(9) В файл можно посмотреть что выгрузилось. Отладку нужно делать с ключом РежимОтладки, иначе обмен в фоновом задании выполняется.
11. a a (asddsaas) 17.05.18 16:07 Сейчас в теме
(10) Я настроил автоматическое подключение фоновых заданий. Вроде останавливает)

<?xml version="1.0" encoding="UTF-8"?>
<Message xmlns:msg="http://www.1c.ru/SSL/Exchange/Message" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
	<msg:Header>
		<msg:Format>http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.3</msg:Format>;
		<msg:CreationDate>2018-05-17T12:06:03</msg:CreationDate>
		<msg:Confirmation>
			<msg:ExchangePlan>СинхронизацияДанныхЧерезУниверсальныйФормат</ms­g:ExchangePlan>
			<msg:To>УП</msg:To>
			<msg:From>ЦБ</msg:From>
			<msg:MessageNo>256</msg:MessageNo>
			<msg:ReceivedNo>240</msg:ReceivedNo>
		</msg:Confirmation>
		<msg:AvailableVersion>1.3</msg:AvailableVersion>
		<msg:AvailableVersion>1.2</msg:AvailableVersion>
		<msg:AvailableVersion>1.1</msg:AvailableVersion>
		<msg:AvailableVersion>1.0</msg:AvailableVersion>
	</msg:Header>
	<Body xmlns="http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.3">
		<УдалениеОбъекта>
			<СсылкаНаОбъект>
				<СсылкаНаОбъект>
					<РКОРасчетыСКонтрагентамиСсылка>bad14526-26b1-11e8-80c1-0002c9522660</РКОРасчетыСКонтрагентамиСсылка>
				</СсылкаНаОбъект>
			</СсылкаНаОбъект>
		</УдалениеОбъекта>
		<УдалениеОбъекта>
			<СсылкаНаОбъект>
				<СсылкаНаОбъект>
					<РКОПрочаяВыдачаСсылка>bad14526-26b1-11e8-80c1-0002c9522660</РКОПрочаяВыдачаСсылка>
				</СсылкаНаОбъект>
			</СсылкаНаОбъект>
		</УдалениеОбъекта>
		<УдалениеОбъекта>
			<СсылкаНаОбъект>
				<СсылкаНаОбъект>
					<РКОПрочийРасходСсылка>bad14526-26b1-11e8-80c1-0002c9522660</РКОПрочийРасходСсылка>
				</СсылкаНаОбъект>
			</СсылкаНаОбъект>
		</УдалениеОбъекта>
	</Body>
</Message>
Показать


Я так понимаю, это пустая выгрузка?
12. Максим Сухов (MaxS) 1032 17.05.18 16:25 Сейчас в теме
(11) в ПОД ИспользованиеПКО.* равно ложь , поэтому выгрузилось УдалениеОбъекта
13. a a (asddsaas) 17.05.18 16:42 Сейчас в теме
(12) Тогда я решительно ничего не понимаю... Код обработчика ПОД_ДокументРасходныйКассовыйОрдер_Отправка_ПриОбработке

ИспользованиеПКО.ДокументРКОРасчетыСКонтрагентами_Отправка = Ложь;
ИспользованиеПКО.ДокументРКОПрочаяВыдача_Отправка = Ложь;
ИспользованиеПКО.ДокументРКОПередачаВДругуюКассу_Отправка = Ложь;


Если ДанныеИБ.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВозвратОплатыКлиенту Тогда 
	ИспользованиеПКО.ДокументРКОРасчетыСКонтрагентами_Отправка = Истина;
ИначеЕсли ДанныеИБ.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПрочаяВыдачаДенежныхСредств Тогда 
	ИспользованиеПКО.ДокументРКОПрочаяВыдача_Отправка = Истина;
ИначеЕсли ДанныеИБ.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ВыдачаДенежныхСредствВДругуюКассу Тогда 
	ИспользованиеПКО.ДокументРКОПередачаВДругуюКассу_Отправка = Истина;
КонецЕсли;
Показать

Я проверял запросом в консоле, ХозОперация точно та. Пробовал отключать все ПКО кроме ДокументРКОПередачаВДругуюКассу_Отправка. Выгружается тоже самое.
14. Максим Сухов (MaxS) 1032 17.05.18 16:53 Сейчас в теме
(13) Если отладка в этом модуле останавливается, то должно выгружаться. Непонятно что ещё может быть, т.к. здесь уже пройдены все другие возможные препятствия.
15. a a (asddsaas) 17.05.18 16:59 Сейчас в теме
(14)
Если отладка в этом модуле останавливается

В том то и дело что не останавливается
16. a a (asddsaas) 18.05.18 10:23 Сейчас в теме
(14) Разобрался. Все дело было в правилах регистрации.
Выгрузил правила, отредактировал в КД 2, загрузил обратно и все заработало!
Спасибо за помощь!
Оставьте свое сообщение