Имя: Пароль:
1C
Админ
Не выводится 4-й уровень группировки
0 Midasu
 
31.10.13
11:46
1С 8.1, УТ 10.3.
Вывод:
ТабДок.НачатьАвтогруппировкуСтрок();
Итоги = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
    
    Пока Итоги.Следующий() Цикл
          Итог.Параметры.Заполнить(Итоги);
          ТабДок.Вывести(Итог, Итоги.Уровень());
          Контры = Итоги.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
        
          Пока Контры.Следующий() Цикл
               Контр.Параметры.Заполнить(Контры);
               ТабДок.Вывести(Контр, Контры.Уровень());
               Группы = Контры.Выбрать();
            
               Пока Группы.Следующий() Цикл
                Группа.Параметры.Заполнить(Группы);
                ТабДок.Вывести(Группа, Группы.Уровень());
                Товары = Группы.Выбрать();
                
                Пока Товары.Следующий() Цикл
                    Товар.Параметры.Заполнить(Товары);
                    ТабДок.Вывести(Товар, Товары.Уровень());
                КонецЦикла;
            КонецЦикла;
          КонецЦикла;
    КонецЦикла;
    ТабДок.ЗакончитьАвтогруппировкуСтрок();

Запрос:
ВЫБРАТЬ
    Сетевики.Контрагент КАК Контрагент,
    Закупки.Номенклатура КАК Номенклатура,
    МАКСИМУМ(Закупки.ДокументЗакупки.Дата) КАК Дата,
    МАКСИМУМ(Закупки.СтоимостьОборот) / МАКСИМУМ(Закупки.КоличествоОборот) КАК ЦенаАкции,
    МАКСИМУМ(ЦеныНоменклатурыСрезПоследних.Цена) КАК ЦенаЗакупочная,
    (МАКСИМУМ(ЦеныНоменклатурыСрезПоследних.Цена) - (МАКСИМУМ(Закупки.СтоимостьОборот) / МАКСИМУМ(Закупки.КоличествоОборот)))/(МАКСИМУМ(Закупки.СтоимостьОборот) / МАКСИМУМ(Закупки.КоличествоОборот))*100 КАК Процент,
    МАКСИМУМ(Закупки.КоличествоОборот) КАК Количество,
    СУММА(Закупки.СтоимостьОборот) КАК СуммаАкции,
    СУММА(Закупки.КоличествоОборот * ЦеныНоменклатурыСрезПоследних.Цена) КАК СуммаЗакупочная,
    СУММА((Закупки.КоличествоОборот * ЦеныНоменклатурыСрезПоследних.Цена) - Закупки.СтоимостьОборот) КАК Разница,
    МАКСИМУМ(Закупки.Номенклатура.Родитель) КАК Группа
ИЗ
    (ВЫБРАТЬ
        Сетевики.Объект.Ссылка КАК Контрагент
    ИЗ
        РегистрСведений.КатегорииОбъектов КАК Сетевики
    ГДЕ
        Сетевики.Категория = &КатегорияСетевиков) КАК Сетевики
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.Закупки.Обороты(&Нач, &Кон, Регистратор, ДокументЗакупки.Акция = ИСТИНА) КАК Закупки
        ПО Сетевики.Контрагент = Закупки.Контрагент
            ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ТипЦен = &Закупочная) КАК ЦеныНоменклатурыСрезПоследних
            ПО Закупки.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура
СГРУППИРОВАТЬ ПО
    Сетевики.Контрагент, Закупки.Номенклатура
ИТОГИ ПО
    ОБЩИЕ, Сетевики.Контрагент, Закупки.Номенклатура.Родитель

Выводит так:
http://s3.hostingkartinok.com/uploads/images/2013/10/ffde441603674e546a4aa194210f3e5e.jpg
Макет выглядит так:
http://s5.hostingkartinok.com/uploads/images/2013/10/539610de7f40c0e9cdc5a8bab2744751.jpg

Что не так? 1С не способна выводить 4 уровня группировки?
1 Fragster
 
модератор
31.10.13
11:47
юзай СКД, будь мужиком
2 Fragster
 
модератор
31.10.13
11:47
ОбходРезультатаЗапроса.ПоГруппировкам нужен везде, если что...
3 Fragster
 
модератор
31.10.13
11:47
(2)+ ну разве что кроме детальных записей
4 Midasu
 
31.10.13
11:49
(1)
А как СКД использовать в обработке?
(2)
О, заработало. С 3-мя уровнями без этого работало.
(3)
Огромное спасибо.