Имя: Пароль:
1C
1С v8
Группировки в отчете что не так
0 asder117
 
08.09.13
14:41
Уважаемые. Есть код
Процедура КнопкаВыполнитьНажатие(Кнопка)
    
    Макет = ПолучитьМакет("Макет1");
    ТабДок=Новый ТабличныйДокумент;
    Запрос = Новый Запрос;
    Запрос.Текст =
        "ВЫБРАТЬ
        |    ОтчетПроизводстваЗаСменуМатериалы.Номенклатура КАК Номенклатура,
        |    ПРЕДСТАВЛЕНИЕ(ОтчетПроизводстваЗаСменуМатериалы.Номенклатура),
        |    СУММА(ОтчетПроизводстваЗаСменуМатериалы.Количество) КАК Количество,
        |    ОтчетПроизводстваЗаСменуМатериалы.Спецификация,
        |    ПРЕДСТАВЛЕНИЕ(ОтчетПроизводстваЗаСменуМатериалы.Спецификация)
        |ИЗ
        |    Документ.ОтчетПроизводстваЗаСмену.Материалы КАК ОтчетПроизводстваЗаСменуМатериалы
        |ГДЕ
        |    ОтчетПроизводстваЗаСменуМатериалы.Ссылка.Дата МЕЖДУ &Дата1 И &Дата2
        |
        |СГРУППИРОВАТЬ ПО
        |    ОтчетПроизводстваЗаСменуМатериалы.Спецификация,
        |    ОтчетПроизводстваЗаСменуМатериалы.Номенклатура
        |
        |УПОРЯДОЧИТЬ ПО
        |    ОтчетПроизводстваЗаСменуМатериалы.Спецификация";

    Запрос.УстановитьПараметр("Дата1", Дата1);
    Запрос.УстановитьПараметр("Дата2", Дата2);

    Результат = Запрос.Выполнить();

    ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");
    ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");
    ОбластьШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицы");
    ОбластьПодвалТаблицы = Макет.ПолучитьОбласть("ПодвалТаблицы");
    ОбластьДетальныхЗаписей = Макет.ПолучитьОбласть("Детали");

    ТабДок.Очистить();
    ТабДок.Вывести(ОбластьЗаголовок);
    ТабДок.Вывести(ОбластьШапкаТаблицы);
    ТабДок.НачатьАвтогруппировкуКолонок();

    ВыборкаДетальныеЗаписи = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
        ОбластьДетальныхЗаписей.Параметры.Заполнить(ВыборкаДетальныеЗаписи);
        ТабДок.Вывести(ОбластьДетальныхЗаписей, ВыборкаДетальныеЗаписи.Уровень());
    КонецЦикла;
    //УровеньГруппировки = 1;
    ТабДок.ЗакончитьАвтогруппировкуКолонок();
    //ТабДок.ПоказатьУровеньГруппировокКолонок(УровеньГруппировки);
    ТабДок.Вывести(ОбластьПодвалТаблицы);
    ТабДок.Вывести(ОбластьПодвал);

    //}}КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА
    ТабДок.Показать();
КонецПроцедуры
Пытаюсь чтобы в отчете можно было сворачивать по + значение "Спецификация" а выводится в сплошную таблицу
Что не так подскажите плз.
1 SanGvin
 
08.09.13
14:48
Уровень
2 SanGvin
 
08.09.13
14:48
дебагером глянь и увидишь
3 asder117
 
08.09.13
14:49
(2) глядел толку-то. что не так может подскажешь все-таки
4 SanGvin
 
08.09.13
15:00
смотреть надо, но если память не изменяет- выводи на нулевом шапку, на первом выводи строки
5 SanGvin
 
08.09.13
15:00
если еще вложенность нужна - на втором выводишь подстроки и тд
6 asder117
 
08.09.13
15:04
(5) примера никакого нет
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс