Имя: Пароль:
1C
1С v8
Запрос с группировками
0 21stas
 
27.09.16
09:08
Хочу разложить остатки на 10-м счёте - по складам, потом по номенлатуре, потом по документу.
Пишу запрос:
ВЫБРАТЬ
    ХозрасчетныйОстаткиИОбороты.Субконто1 КАК Субконто1,
    ХозрасчетныйОстаткиИОбороты.Субконто2 КАК Субконто2,
    СУММА(ХозрасчетныйОстаткиИОбороты.СуммаОборотДт) КАК СуммаОборотДт,
    СУММА(ХозрасчетныйОстаткиИОбороты.СуммаОборотКт) КАК СуммаОборотКт,
    СУММА(ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстаток) КАК СуммаНачальныйОстаток,
    СУММА(ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстаток) КАК СуммаКонечныйОстаток,
    СУММА(ХозрасчетныйОстаткиИОбороты.КоличествоНачальныйОстаток) КАК КоличествоНачальныйОстаток,
    СУММА(ХозрасчетныйОстаткиИОбороты.КоличествоКонечныйОстаток) КАК КоличествоКонечныйОстаток,
    СУММА(ХозрасчетныйОстаткиИОбороты.КоличествоОборотДт) КАК КоличествоОборотДт,
    СУММА(ХозрасчетныйОстаткиИОбороты.КоличествоОборотКт) КАК КоличествоОборотКт,
    ХозрасчетныйОстаткиИОбороты.Регистратор КАК Регистратор,
    ХозрасчетныйОстаткиИОбороты.Регистратор.СуммаДокумента КАК СуммаДокумента
ИЗ
    РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&Дата1, &Дата2, Регистратор, , Счет В ИЕРАРХИИ (&СчетСчет), , ) КАК ХозрасчетныйОстаткиИОбороты
ГДЕ
    ХозрасчетныйОстаткиИОбороты.Организация = &НашаОрганизация

СГРУППИРОВАТЬ ПО
    ХозрасчетныйОстаткиИОбороты.Субконто1,
    ХозрасчетныйОстаткиИОбороты.Субконто2,
    ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстаток,
    ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстаток,
    ХозрасчетныйОстаткиИОбороты.КоличествоНачальныйОстаток,
    ХозрасчетныйОстаткиИОбороты.КоличествоКонечныйОстаток,
    ХозрасчетныйОстаткиИОбороты.КоличествоОборотДт,
    ХозрасчетныйОстаткиИОбороты.КоличествоОборотКт,
    ХозрасчетныйОстаткиИОбороты.Регистратор,
    ХозрасчетныйОстаткиИОбороты.Регистратор.СуммаДокумента
ИТОГИ ПО
    Субконто2,
    Субконто1,
    Регистратор

И почему-то строк с документами (регистраторами) не получаю, хотя они есть.

Если делаю такой обход, то в третий цикл (Выборка3) вообще не входит:
РезультатЗапроса = Запрос.Выполнить();
    ВыборкаЗапрос=РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
    Пока ВыборкаЗапрос.Следующий() Цикл
        Выборка2 = ВыборкаЗапрос.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
        Пока Выборка2.Следующий() Цикл
            Выборка3 = Выборка2.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
            Пока Выборка3.Следующий() Цикл
                Сообщить(1);
            КонецЦикла;
        КонецЦикла;
    КонецЦикла;
1 Рэйв
 
27.09.16
09:21
СГРУППИРОВАТЬ ПО СуммаНачальныйОстаток - это конечно сильно.:-)
2 В тылу врага
 
27.09.16
09:25
движений за период нет?
3 21stas
 
27.09.16
10:42
(1) Слабоумие и конструктор!
4 21stas
 
27.09.16
10:42
(2) Движения есть. Проверено.
Попробую ещё после того как уберу глупости из (1)
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший