![]() |
|
Обход по группировке | ☑ | ||
---|---|---|---|---|
0
vanyshan
25.10.11
✎
16:01
|
Добрый день!
Подскажите кому не трудно. Запрос=Новый Запрос("ВЫБРАТЬ |УсловияПоставокПоДоговорамКонтрагентовПоНоменклатуреСрезПоследних.Номенклатура, |УсловияПоставокПоДоговорамКонтрагентовПоНоменклатуреСрезПоследних.ДоговорКонтрагента КАК ДоговорКонтрагента, |УсловияПоставокПоДоговорамКонтрагентовПоНоменклатуреСрезПоследних.Регистратор КАК Регистратор |ИЗ |РегистрСведений.УсловияПоставокПоДоговорамКонтрагентовПоНоменклатуре.СрезПоследних(&Период, ДоговорКонтрагента = &Договор) КАК УсловияПоставокПоДоговорамКонтрагентовПоНоменклатуреСрезПоследних |УПОРЯДОЧИТЬ ПО |Регистратор УБЫВ |ИТОГИ ПО |Регистратор, |ДоговорКонтрагента |АВТОУПОРЯДОЧИВАНИЕ"); Запрос.УстановитьПараметр("Период", Дата); Запрос.УстановитьПараметр("Договор", ДоговорКонтрагента); Выборка=Запрос.Выполнить().Выбрать(); СпособВыборки = ОбходРезультатаЗапроса.ПоГруппировкамСИерархией; Результат = Запрос.Выполнить(); ВыборкаПоРегистратору = Результат.Выбрать(СпособВыборки); Пока ВыборкаПоРегистратору.Следующий() Цикл Сообщить(ВыборкаПоРегистратору.Регистратор); КонецЦикла; Выборка по регистратору перебирает все группировки в запросе. Как вывести только первую группировку,т.е.обход только по первой группировке? |
|||
1
Zypse
25.10.11
✎
16:08
|
ВыборкаПоРегистратору = Результат.Выбрать(СпособВыборки,"Регистратор");
|
|||
2
vanyshan
25.10.11
✎
16:11
|
Может не совсем подробно объяснил, попробую так. В запросе группировочным полем является поле регистратор. Мне нужно увидеть только первую группу, ближайшую на сегодня по дате.
|
|||
3
hhhh
25.10.11
✎
16:12
|
ВЫБРАТЬ ПЕРВЫЕ 1
не оно? |
|||
4
Ненавижу 1С
гуру
25.10.11
✎
16:12
|
Офигеть постановка вопроса:
УПОРЯДОЧИТЬ ПО Регистратор.МоментВремени УБЫВ |
|||
5
vanyshan
25.10.11
✎
16:18
|
ВыборкаПоРегистратору = Результат.Выбрать(СпособВыборки,"Регистратор"); - так тоже самое
УПОРЯДОЧИТЬ ПО Регистратор.МоментВремени УБЫВ - и так тоже. А выбрать первые выбирает первую группировку с первой номенклатурой, а мне нужна первая группировка со всеми номенклатурами которые этой группировке принадлежат |
|||
6
hhhh
25.10.11
✎
16:24
|
(5) ну так тогда
Пока ВыборкаПоРегистратору.Следующий() Цикл Сообщить(ВыборкаПоРегистратору.Регистратор); ПРЕРВАТЬ; КонецЦикла; |
|||
7
vanyshan
25.10.11
✎
16:36
|
А вот метод прервать похоже то, что нужно.
Только не совсем понятно как он работает. Идет по циклу и как только находит первую группировку как в моем случае заканчивает обход, так получается? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |