Имя: Пароль:
1C
 
Группировка в поле табличного документа
0 AlexeyVM
 
30.08.17
12:17
Доброе утро! Подскажите пожалуйста, как можно сгруппировать поле табличного документа
Пробовал так, но не выходит:
ТабЗначений = Запрос.Выполнить().Выгрузить();
СформироватьТЗ(ТабЗначений);

Процедура СформироватьТЗ(ТабЗначений)
    ТабДок = ЭлементыФормы.ПолеТабличногоДокумента1;    
    ТабДок.Очистить();

    ДетальнаяСтрока = ТабДок.ПолучитьОбласть();
    КоличествоКолонок = ТабЗначений.Колонки.Количество();
    
    Для Каждого СтрокаТЗ Из ТабЗначений Цикл
        Для ТекущееПоле = 0 По КоличествоКолонок -1  Цикл
            Область = ДетальнаяСтрока.Область(1, ТекущееПоле +1);
            Область.СодержитЗначение = Истина;
            КС = Новый КвалификаторыСтроки(99);
            Массив = Новый Массив;
            Массив.Добавить(ТипЗнч(СтрокаТЗ[ТекущееПоле]));
            ОписаниеТиповС = Новый ОписаниеТипов(Массив, , КС);
            Область.ТипЗначения = ОписаниеТиповС;
            Область.Значение = СтрокаТЗ[ТекущееПоле];
        КонецЦикла;
        ТабДок.НачатьАвтогруппировкуСтрок();
        ТабДок.Вывести(ДетальнаяСтрока);
        ТабДок.ЗакончитьАвтогруппировкуСтрок();
    КонецЦикла;
КонецПроцедуры

Выводит просто результат запроса без группировок, вот-так

Поле1
Поле1 100
Поле1 200
Поле2
Поле2 150
Поле2  50
Не получается свернуть Поле1 и Поле2, чтоб открывалось по +
1 Ёпрст
 
30.08.17
12:37
(0)
А чего по-твоему должно было "группировать" ?
2 AlexeyVM
 
30.08.17
12:40
(1)
Пытался чтобы через + разворачивалось Поле1 и там были эти 2 записи, и также Поле2. Но не понимаю как это делается.
3 Zmich
 
30.08.17
12:42
(0). Насколько я понимаю, автогруппировка будет работать, если будешь использовать 2-й параметр в методе Вывести().
4 Lexey_
 
30.08.17
12:43
(0) смотри пример в СП для ТабличныйДокумент.Вывести()