Имя: Пароль:
1C
 
Не могу свернуть группировки строк в таб. документе
0 Михаил Козлов
 
01.07.25
16:58
Сломал голову. Отчет не на СКД.
Автогруппировка строк,табДок формируется через табДок.Вывести(Область,уровень, , ЛОЖЬ);
После формирования КоличествоУровнейГруппировокСтрок()=3.
После табДок.ПоказатьУровеньГруппировокСтрок(уровень) все группировки развернуты независимо от уровень.
Смотрел и ИТС (там почему-то в примере:
ЭлементыФормы.ПолеТабличногоДокумента1.ПоказатьУровеньГруппировокСтрок(...) - не понимаю, при чем тут элементы формы.
У других авторов повторяется этот код.
1 Fish
 
гуру
01.07.25
17:17
(0) В СП тоже в примере поле табдока, хотя метод относится к табдоку.

А пробовал сначала
табДок.ПоказатьУровеньГруппировокСтрок(уровень)

а потом табдок.показать()
2 Fedor-1971
 
01.07.25
17:19
(0) Это не для табДок.Показать() - т.е. табличный документ в отдельном окне (тут не получается рулить свёрткой групп),
а поле формы с типом ТабличныйДокумент - т.е. делаешь реквизит формы ТабличныйДокумент, выносишь его на форму и заполняешь оный (Показать(...) уже не нужно, он и так на форме и тут срабатывает твой код ЭлементыФормы.ПолеТабличногоДокумента1 ....)
3 Fedor-1971
 
01.07.25
17:21
(1) Получилось? на старых версиях 8.3 не получалось
4 Михаил Козлов
 
01.07.25
17:21
табДок - реквизит формы. И есть элемент формы с ним, как источником данных.
5 Fish
 
гуру
01.07.25
17:23
(3) Не знаю, у меня отчеты СКДшные, там ПоказатьУровеньГруппировокСтрок прекрасно работает в процедуре ПриКомпоновкеРезультата
6 Михаил Козлов
 
01.07.25
17:24
Тип элемента формы для табДока - ПолеФормы с видом - ПолеТабличногоДокумента.
У него нет метода ПоказатьУровень...
Главное, когда-то делал. Может на 8.2? Сейчас 8.3.24
7 Fish
 
гуру
01.07.25
17:27
(6) Из СП:
Пример:
// ПолеТД - реквизит (поле табличного документа) для показа результатов отчета

// В имени кнопки содержится уровень

Процедура ОткрытьУровень(Кнопка)
    Уровень = Число(Сред(Кнопка.Имя, 2)) - 1;
    У = ПолеТД.КоличествоУровнейГруппировокСтрок() - 1;
    Пока У > Уровень Цикл
        ПолеТД.ПоказатьУровеньГруппировокСтрок(У);
        У = У - 1;
    КонецЦикла;
    ПолеТД.ПоказатьУровеньГруппировокСтрок(Уровень);
КонецПроцедуры
8 Михаил Козлов
 
01.07.25
17:27
Я осёл: делал на сервере. Отбой.