Как выборку из результата запроса поместить в таблицу значений
29.11.2012
13:37
#14
"> ДокументыВыборка = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам)
> ДетальныеЗаписи = ДокументыВыборка.выбрать();
пока ДетальныеЗаписи.Следующий() цикл
стрТЗ=ВашаТаблицаЗначений.Добавить();
ЗаполнитьЗначенияСвойств(стрТЗ, ДетальныеЗаписи)
конеццикла
Условие - колонки в ТЗ должны называться как поля в запросе"
> ДетальныеЗаписи = ДокументыВыборка.выбрать();
пока ДетальныеЗаписи.Следующий() цикл
стрТЗ=ВашаТаблицаЗначений.Добавить();
ЗаполнитьЗначенияСвойств(стрТЗ, ДетальныеЗаписи)
конеццикла
Условие - колонки в ТЗ должны называться как поля в запросе"
29.11.2012
13:39
#15
"ты СП давно читал?
Синтаксис:
Выгрузить(<ТипОбхода>)
Параметры:
<ТипОбхода> (необязательный)
Тип: ОбходРезультатаЗапроса.
Задает тип обхода записей в получаемой выборке.
Значение по умолчанию: Прямой
Возвращаемое значение:
Тип: ТаблицаЗначений; ДеревоЗначений.
Если тип обхода задан Прямой, результат выгружается в таблицу значений, в противном случае в дерево значений.
Описание:
Создает таблицу значений (или дерево значений) и копирует в нее все записи набора."
Синтаксис:
Выгрузить(<ТипОбхода>)
Параметры:
<ТипОбхода> (необязательный)
Тип: ОбходРезультатаЗапроса.
Задает тип обхода записей в получаемой выборке.
Значение по умолчанию: Прямой
Возвращаемое значение:
Тип: ТаблицаЗначений; ДеревоЗначений.
Если тип обхода задан Прямой, результат выгружается в таблицу значений, в противном случае в дерево значений.
Описание:
Создает таблицу значений (или дерево значений) и копирует в нее все записи набора."
29.11.2012
13:41
#16
Да, так изначально и предполагала, так сделано, но как-то некрасявишно это
Надеялась, что есть какой-то другой способ, кроме перебора
29.11.2012
14:48
#18
Выгрузка по сути это тот же перебор. Ну и можно же свою функцию нарисовать "ВыгрузитьДетальныеЗаписи()".
29.11.2012
15:01
#20
"Вообще пришла в голову идея некоторая.
- Выбираешь нужные данные и помещаешь их во временную таблицу.
- Создаешь второй пакет, в котором по временной таблице строишь итоги.
- Далее код:
Результат = Запрос.ВыполнитьПакет();
ТЗ = Результат[0].Выгрузить();
Выборка = Результат[1].Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
P.S. Прям как олимпиада по коду 1С. :)"
- Выбираешь нужные данные и помещаешь их во временную таблицу.
- Создаешь второй пакет, в котором по временной таблице строишь итоги.
- Далее код:
Результат = Запрос.ВыполнитьПакет();
ТЗ = Результат[0].Выгрузить();
Выборка = Результат[1].Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
P.S. Прям как олимпиада по коду 1С. :)"
Читают тему
(гостей: 1)