- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
ВыборкаЗаказов = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока ВыборкаЗаказов.Следующий() Цикл
ВыборкаГрузополучателей = ВыборкаЗаказов.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока ВыборкаГрузополучателей.Следующий() Цикл
ВыборкаАдресовДоставки = ВыборкаГрузополучателей.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока ВыборкаАдресовДоставки.Следующий() Цикл
РезультатЗапроса = ВыборкаАдресовДоставки.Выбрать();
СтавкаНДС = ПолучитьСтавкуНДСдляДокументов(Переменные.ОргПроизводитель, РезультатЗапроса[0].Контрагент);
Если РезультатЗапроса.Количество() <> 0 Тогда
ТАблицаДАнных = ПреобразоватьВыборкуВТаблицуЗначение(РезультатЗапроса);
Функция ПреобразоватьВыборкуВТаблицуЗначение(ИсходнаяВыборка)
ТаблицаРЕзультат = Новый ТаблицаЗначений;
Для каждого Колонка Из ИсходнаяВыборка.Колонки Цикл
ТаблицаРезультат.Колонки.Добавить(Колонка.Имя);
КОнецЦикла;
Для каждого СтрокаВыборки из ИсходнаяВыборка Цикл
СтрокаРезультата = ТаблицаРЕзультат.Добавить();
ЗаполнитьЗначенияСвойств(СтрокаВыборки, СтрокаРезультата);
КонецЦикла;
Возврат ТаблицаРЕзультат;
КонецФункции
Я допускаю, что это было написано в староглиняные времена, когда у РезультатЗапроса не было метода Выгрузить() но блин! Всей истории 1С я не знаю, и сомневаюсь, что такие времена когда-то были. А вообще что-то подсказывает что песатель просто не знал...
guest 22.03.2016 08:16 # 0
guest 25.03.2016 08:38 # 0
Ежели не знали, то иерархическая выгрузка из результата запроса даст дерево, а не таблицу. В общем, автор считает себя слишком умным, а зря...
guest 25.03.2016 14:34 # −1
Он же пишет на 1С
какой тут ум?