Выгрузка дополнительных реквизитов из других справочников в одном ПВД

1. Dnbzv 26.09.19 12:42 Сейчас в теме
Добрый день! Имеется следующая задача:
Есть 2 конфигурации УТ11(Источник) и БП3(Приемник), необходимо перенести справочник Партнеры в справочник Контрагенты, при этом в том же самом ПВД Партнеры необходимо перенести реквизиты из справочников ДоговорыКонтрагентов и БанковскиеСчетаКонтрагентов. Имеется ПВД Партнеры, оно прекрасно работает и партнеры уже перенесены, теперь в нем, а именно в обработчике После выгрузки необходимо перенести оставшиеся справочники, подскажите, пожалуйста, в какую сторону двигаться и что использовать.
По теме из базы знаний
Найденные решения
6. bb1962 993 26.09.19 15:36 Сейчас в теме
Так и будет. Когда разберетесь и поймете, так и будет.
При выгрузке каждого партнера будут выгружаться все его договоры и банковские счета.
Но не в ПВД а в ПКО. Это не принципиально, но лучше в ПКО Партнеры.
Я приведу пример из других правил, поправите под себя.
Запрос = Новый Запрос;
	Запрос.Текст = "
	|ВЫБРАТЬ
	|	БанковскиеСчета.Ссылка
	|ИЗ
	|	Справочник.БанковскиеСчета КАК БанковскиеСчета
	|ГДЕ
	|	БанковскиеСчета.Владелец = &Владелец";
	Запрос.УстановитьПараметр("Владелец", Источник);
	
	РезультатЗапроса = Запрос.Выполнить().Выгрузить();
	Для каждого Строка Из РезультатЗапроса Цикл
		ВыгрузитьПоПравилу(Строка.Ссылка,,,, "БанковскиеСчета");
	КонецЦикла;
Показать

Это д.б. в ПКО Партнеры после выгрузки
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. bb1962 993 26.09.19 13:14 Сейчас в теме
Либо в обработчике После выгрузки
н-р
ВыгрузитьПоПравилу(Источник,,,, "БанковскиеСчетаКонтрагентов");

либо После выгрузки формируется кеш контрагентов а После выгрузки данных
примерно так

....

Запрос.УстановитьПараметр("Владелец", Параметры.КешКонтрагенты);

РезультатЗапроса = Запрос.Выполнить().Выгрузить();
Для каждого Строка Из РезультатЗапроса Цикл
ВыгрузитьПоПравилу(Строка.Ссылка,,,, "БанковскиеСчетаКонтрагентов");
КонецЦикла;
PS: заголовок вопроса никуда не годится
3. Dnbzv 26.09.19 13:27 Сейчас в теме
(2)Попробовал первый вариант
ВыгрузитьПоПравилу(Объект,,,,"ДоговорыКонтрагентов");
ВыгрузитьПоПравилу(Объект,,,,"БанковскиеСчета");

В итоге выгрузились реквизиты договоров и банковских счетов с именами контрагентов.
4. bb1962 993 26.09.19 13:41 Сейчас в теме
Если Вы совсем слабы в конвертации, то всего не объяснишь.
Делать это нужно не в ПВД, а в ПКО Партнеры (так грамотнее), соответственно там не Объект а Источник.
Но в ПКО БанковскиеСчета у Вас источником д.б. скорее всего справочник БанковскиеСчета, соответственно нужно сначала получить этот банковский счет партнера и отдать его в ВыгрузитьПоПравилу. Все это в обработчике После выгрузки в ПКО Партнеры.
Т.е. там будет не
ВыгрузитьПоПравилу(Источник,,,, "БанковскиеСчетаКонтрагентов");
как я написал сначала а
ВыгрузитьПоПравилу(Строка.Ссылка,,,, "БанковскиеСчета");
Строка.Ссылка - это банковский счет партнера из запроса
5. Dnbzv 26.09.19 14:04 Сейчас в теме
(4)Мне нужно сделать так, чтобы все ПКО: "Партнеры", "ДоговорыКонтрагентов", "БанковскиеСчета" конвертировали реквизиты для конкретного партнера и выгружались из одного Правила выгрузки.
6. bb1962 993 26.09.19 15:36 Сейчас в теме
Так и будет. Когда разберетесь и поймете, так и будет.
При выгрузке каждого партнера будут выгружаться все его договоры и банковские счета.
Но не в ПВД а в ПКО. Это не принципиально, но лучше в ПКО Партнеры.
Я приведу пример из других правил, поправите под себя.
Запрос = Новый Запрос;
	Запрос.Текст = "
	|ВЫБРАТЬ
	|	БанковскиеСчета.Ссылка
	|ИЗ
	|	Справочник.БанковскиеСчета КАК БанковскиеСчета
	|ГДЕ
	|	БанковскиеСчета.Владелец = &Владелец";
	Запрос.УстановитьПараметр("Владелец", Источник);
	
	РезультатЗапроса = Запрос.Выполнить().Выгрузить();
	Для каждого Строка Из РезультатЗапроса Цикл
		ВыгрузитьПоПравилу(Строка.Ссылка,,,, "БанковскиеСчета");
	КонецЦикла;
Показать

Это д.б. в ПКО Партнеры после выгрузки
8. volconok27 49 02.12.19 11:16 Сейчас в теме
(6) Здравствуйте, простите за беспокойство. Можете и мне помочь
7. volconok27 49 02.12.19 10:34 Сейчас в теме
Добрый день. Похожая проблема. Нужно вместе с документом выгрузить его статус из регистра сведений. Пишу:

Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
				|	усСтатусДокументов.Статус КАК Статус
				|ИЗ
				|	РегистрСведений.усСтатусДокументов КАК усСтатусДокументов
				|ГДЕ
				|	усСтатусДокументов.Документ = &Документ";
Запрос.УстановитьПараметр("Документ", Источник.Ссылка);
Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Следующий() Тогда
	ВыгрузитьПоПравилу(Выборка.Статус,,,, "СтатусыРасходныхОрдеров");
КонецЕсли;
Показать


Ничего не выгружается. Помогите, пожалуйста, разобраться.
Оставьте свое сообщение

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