Конвертация данных 2. Два документа в один

1. Akuji 22 16.10.22 17:27 Сейчас в теме
Подскажите как реализовать в КД2.
В конфигурации источнике есть несколько документов (однотипных). К приру ПТиУ №1, 2, 3 с одним и тем же контрагентом и договором.
В приемнике это должен быть один документ в котором в табличной части три строки (номер документа, сумма всего по документу)
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. RustamZz 16.10.22 18:01 Сейчас в теме
(1)
Прикрепленные файлы:
5. Akuji 22 17.10.22 11:23 Сейчас в теме
(2)Я так понимаю нужно запросом? даже если зарегистрирован один документ... выбрать все три и свернуть их ври в эту структуру?
а табличная часть это структура в структуре?... как дальше обработать?
6. RustamZz 17.10.22 11:26 Сейчас в теме
(5) Как хотите. Табличная часть это или таблица значений, или массив структур.
3. DENSKR 15 16.10.22 21:57 Сейчас в теме
4. Akuji 22 17.10.22 11:22 Сейчас в теме
(3)Проблема в том как их склеить в один документ в приемнике...
8. tusv 212 17.10.22 15:20 Сейчас в теме
(4)А зачем в приемнике? Делайте объединяющий запрос в ПВД Перед выгрузкой
Переопределяем Объект и всего делоф
Запрос = Новый Запрос("ВЫБРАТЬ
|	ПоступлениеТоваровУслуг.Ссылка КАК Ссылка,
|	&Дата КАК Дата,
|	ПоступлениеТоваровУслуг.Организация КАК Организация,
|	ПоступлениеТоваровУслуг.Контрагент КАК Контрагент,
|	ПоступлениеТоваровУслуг.ДоговорКонтрагента КАК ДоговорКонтрагента,
|	ПоступлениеТоваровУслуг.Номер КАК НомерДокумента,
|	ПоступлениеТоваровУслуг.СуммаДокумента КАК СуммаДокумента
|ИЗ
|	Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг
|ГДЕ
|	НАЧАЛОПЕРИОДА(ПоступлениеТоваровУслуг.Дата, ДЕНЬ) = &Дата
|	И ПоступлениеТоваровУслуг.Организация = &Организация
|	И ПоступлениеТоваровУслуг.ДоговорКонтрагента = &ДоговорКонтрагента
|ИТОГИ
|	МИНИМУМ(Ссылка),
|	МАКСИМУМ(Организация),
|	МАКСИМУМ(Контрагент),
|	МАКСИМУМ(ДоговорКонтрагента)
|ПО
|	Дата");
Запрос.УстановитьПараметр("Дата",НачалоДня(Объект.Дата));
Запрос.УстановитьПараметр("Организация",НачалоДня(Объект.Организация));
Запрос.УстановитьПараметр("ДоговорКонтрагента",НачалоДня(Объект.ДоговорКонтрагента));
//Переопределяем объект выгрузки в структуру для передачи в ПКО
//Структура должна содержать рекизиты документа приемника
Объект = Новый Структура("Ссылка,Дата,Организация,Контрагент,ДоговорКонтрагента,Документы");
Объект.Документы = Новый ТаблицаЗначений;
Объект.Документы.Колонки.Добавить("НомерДокумента");
Объект.Документы.Колонки.Добавить("СуммаДокумента");

ВыборкаДокумент = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
ВыборкаДокумент.Следующий();
ЗаполнитьЗначенияСвойств(Объект,ВыборкаДокументы);
ВыборкаСтроки = ВыборкаДокумент.Выбрать();
Пока ВыборкаСтроки.Следующий() Цикл
	ЗаполнитьЗначенияСвойств(Объект.Документы.Добавить(),ВыборкаСтроки);
КонецЦикла;
Показать
7. starjevschik 17.10.22 12:07 Сейчас в теме
Это в правилах выгрузки, ставишь там способ выборки "произвольный алгоритм", и Перед обработкой делаешь структуру, соответствующую документу-резальтату. А как ее заполнить, это дело техники...
Оставьте свое сообщение

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