![]() |
![]() |
![]() |
|
Обход группировок по результатам | ☑ | ||
---|---|---|---|---|
0
shadow_sw
22.06.16
✎
06:30
|
Доброго времени суток!
Подскажите чяднт запрос: Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ЗаказПокупателяТовары.Ссылка.Грузчик КАК Грузчик, | КОЛИЧЕСТВО(ЗаказПокупателяТовары.НомерСтроки) КАК КоличествоСтрок, | КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ЗаказПокупателяТовары.Ссылка) КАК КоличествоЗаказов, | ЗаказПокупателяТовары.Ссылка КАК документ |ИЗ | Документ.ЗаказПокупателя.Товары КАК ЗаказПокупателяТовары |ГДЕ | ЗаказПокупателяТовары.Ссылка.Дата МЕЖДУ &ДатаНач И &ДатаКон | И ЗаказПокупателяТовары.Ссылка.ПометкаУдаления = ЛОЖЬ | |СГРУППИРОВАТЬ ПО | ЗаказПокупателяТовары.Ссылка.Грузчик, | ЗаказПокупателяТовары.Ссылка |ИТОГИ | СУММА(КоличествоСтрок), | СУММА(КоличествоЗаказов) |ПО | ОБЩИЕ, | Грузчик, | документ"; Запрос.УстановитьПараметр("ДатаНач", ДатаНач); Запрос.УстановитьПараметр("ДатаКон", КонецДня(ДатаКон)); Результат = Запрос.Выполнить().Выбрать(); вывод Пока результат.Следующий() Цикл ВыборкаГрузчики = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"Грузчик"); Пока ВыборкаГрузчики.Следующий() Цикл Секция.Параметры.Грузчик = ВыборкаГрузчики.Грузчик; ДокРезультат.Вывести(Секция, 1); ВыборкаЗаказ =Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Документ"); Пока ВыборкаЗаказ.Следующий() Цикл СекцияЗаказ.Параметры.Заказ = ВыборкаЗаказ.Документ; ДокРезультат.Вывести(СекцияЗаказ,2); КонецЦикла; КонецЦикла; получаю вот такую картину http://s019.radikal.ru/i604/1606/b2/b85ed141c51b.jpg |
|||
1
shadow_sw
22.06.16
✎
06:32
|
по сути необходима структура типа:
Грузчик1 показатель1 показатель 2 |----ДокументЗаказа1 |----ДокументЗаказа2 Грузчик2 показатель1 показатель 2 |----ДокументЗаказа3 |----ДокументЗаказа4 |
|||
2
Dilgorp
22.06.16
✎
06:42
|
ВыборкаГрузчики = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока ВыборкаГрузчики.Следующий() Цикл Секция.Параметры.Грузчик = ВыборкаГрузчики.Грузчик; ДокРезультат.Вывести(Секция, 1); ВыборкаЗаказ =ВыборкаГрузчики.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); Пока ВыборкаЗаказ.Следующий() Цикл СекцияЗаказ.Параметры.Заказ = ВыборкаЗаказ.Документ; ДокРезультат.Вывести(СекцияЗаказ,2); КонецЦикла; КонецЦикла; |
|||
3
Dilgorp
22.06.16
✎
06:43
|
как то так
|
|||
4
shadow_sw
22.06.16
✎
06:49
|
к сожалению не взлетело, вообще не выдает данных таким способом
|
|||
5
catena
22.06.16
✎
06:51
|
Результат = Запрос.Выполнить()
ВыборкаГрузчики = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"Грузчик"); Пока ВыборкаГрузчики.Следующий() Цикл Секция.Параметры.Грузчик = ВыборкаГрузчики.Грузчик; ДокРезультат.Вывести(Секция, 1); ВыборкаЗаказ =Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Документ"); Пока ВыборкаЗаказ.Следующий() Цикл СекцияЗаказ.Параметры.Заказ = ВыборкаЗаказ.Документ; ДокРезультат.Вывести(СекцияЗаказ,2); КонецЦикла; |
|||
6
Dilgorp
22.06.16
✎
06:52
|
Вместо
Результат = Запрос.Выполнить().Выбрать(); вывод Пока результат.Следующий() Цикл ВыборкаГрузчики = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"Грузчик"); Пока ВыборкаГрузчики.Следующий() Цикл Секция.Параметры.Грузчик = ВыборкаГрузчики.Грузчик; ДокРезультат.Вывести(Секция, 1); ВыборкаЗаказ =Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Документ"); Пока ВыборкаЗаказ.Следующий() Цикл СекцияЗаказ.Параметры.Заказ = ВыборкаЗаказ.Документ; ДокРезультат.Вывести(СекцияЗаказ,2); КонецЦикла; КонецЦикла; должно быть ВыборкаГрузчики = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); Пока ВыборкаГрузчики.Следующий() Цикл Секция.Параметры.Грузчик = ВыборкаГрузчики.Грузчик; ДокРезультат.Вывести(Секция, 1); ВыборкаЗаказ =ВыборкаГрузчики.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); Пока ВыборкаЗаказ.Следующий() Цикл СекцияЗаказ.Параметры.Заказ = ВыборкаЗаказ.Документ; ДокРезультат.Вывести(СекцияЗаказ,2); КонецЦикла; КонецЦикла; |
|||
7
catena
22.06.16
✎
06:52
|
Не, стоп
|
|||
8
catena
22.06.16
✎
06:52
|
Результат = Запрос.Выполнить()
ВыборкаГрузчики = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"Грузчик"); Пока ВыборкаГрузчики.Следующий() Цикл Секция.Параметры.Грузчик = ВыборкаГрузчики.Грузчик; ДокРезультат.Вывести(Секция, 1); ВыборкаЗаказ =ВыборкаГрузчики.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Документ"); |
|||
9
Dilgorp
22.06.16
✎
06:54
|
| ОБЩИЕ,
и | документ"; из итогов нужно убрать |
|||
10
Dilgorp
22.06.16
✎
06:54
|
тогда мой вариант должен отработать
|
|||
11
shadow_sw
22.06.16
✎
07:10
|
(10) спасибо заработало
(8) спасибо за помощь |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |