Имя: Пароль:
1C
 
отчет СКД программно
0 Новый1сник2
 
16.02.24
14:39
Добрый день!

формирую программно отчет на СКД, все норм. но выгружается в развернутом виде, как сделать чтобы выгружалось в свернутом по группировкам ?
1 Новый1сник2
 
16.02.24
14:44
Подробности
СхемаКомпоновкиДанных = Отчеты.мОтчетПоНеоплаченнымСчетам.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");    
        
        Настройки = СхемаКомпоновкиДанных.НастройкиПоУмолчанию;    
        
        ПараметрДанных=Настройки.ПараметрыДанных.Элементы.Добавить();
        ПараметрДанных.Параметр= Новый ПараметрКомпоновкиДанных("Организация");  
        ПараметрДанных.Использование=Истина;
        ПараметрДанных.Значение=Справочники.Организации.НайтиПоКоду("00-000002");  
            
        ПараметрДанных=Настройки.ПараметрыДанных.Элементы.Добавить();
        ПараметрДанных.Параметр= Новый ПараметрКомпоновкиДанных("НачДата");  
        ПараметрДанных.Использование=Истина;
        ПараметрДанных.Значение = '20210101';
        
        ПараметрДанных=Настройки.ПараметрыДанных.Элементы.Добавить();
        ПараметрДанных.Параметр = Новый ПараметрКомпоновкиДанных("КонДата");  
        ПараметрДанных.Использование=Истина;
        ПараметрДанных.Значение = КонецДня(ТекущаяДата());  
        
        ПараметрДанных=Настройки.ПараметрыДанных.Элементы.Добавить();
        ПараметрДанных.Параметр= Новый ПараметрКомпоновкиДанных("Период");  
        ПараметрДанных.Использование=Истина;
        ПараметрДанных.Значение = КонецДня(ТекущаяДата());  
        

        НовыйЭлементОтбора                     = Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
        ПолеОтбора                             = Новый ПолеКомпоновкиДанных("Долг1");
        НовыйЭлементОтбора.ЛевоеЗначение      = ПолеОтбора;
        НовыйЭлементОтбора.Использование      = Истина;
        НовыйЭлементОтбора.ВидСравнения       = ВидСравненияКомпоновкиДанных.Больше;
        НовыйЭлементОтбора.ПравоеЗначение     = 0;
        
        НовыйЭлементОтбора                     = Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
        ПолеОтбора                             = Новый ПолеКомпоновкиДанных("Ответственный");
        НовыйЭлементОтбора.ЛевоеЗначение      = ПолеОтбора;
        НовыйЭлементОтбора.Использование      = Истина;
        НовыйЭлементОтбора.ВидСравнения       = ВидСравненияКомпоновкиДанных.Равно;
        НовыйЭлементОтбора.ПравоеЗначение     = Справочники.Пользователи.НайтиПоНаименованию(Пользователь);         
        

        
        
        
            
        //Помещаем в переменную данные о расшифровке данных
        Расшифровка = Новый ДанныеРасшифровкиКомпоновкиДанных;    
        //Формируем макет, с помощью компоновщика макета
        КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;    
        
        
        //Передаем в макет компоновки схему, настройки и данные расшифровки
        МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, Расшифровка);    
        ВнешниеПараметры = Новый Структура;    
        //Выполним компоновку с помощью процессора компоновки
        ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
        ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки, ВнешниеПараметры, Расшифровка);    
        //Выводим результат в табличный документ
        ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
        
        ПроцессорВывода.УстановитьДокумент(Таб);      
        
        ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных, Истина);    
        Возврат Таб;
2 Momus
 
16.02.24
14:41
ПоказатьУровеньГруппировокСтрок
3 Новый1сник2
 
16.02.24
14:42
(2) не пойму куда вставить "ПоказатьУровеньГруппировокСтрок"
4 vicof
 
16.02.24
14:45
(3) Может быть стоит открыть СПшечку?)
5 Волшебник
 
16.02.24
14:46
(3) Туда, где Вы показываете Таб
6 Новый1сник2
 
16.02.24
14:50
(5) отчет сохраняется, т.е не показывает.

Таб = СоздатьОтчетДЗ(ТекстПисьма, Пользователь);
    
    ПутьКФайлу = "C:\111\";
    ИмяФайла = "ДЗ.xlsx";
    ПолноеИмяФайла = ПутьКФайлу+ИмяФайла;
    
    ВыгрузитьТДвФайл(Таб, ПолноеИмяФайла, ТекстПисьма);
7 stix2010
 
16.02.24
14:52
к Таб
8 Новый1сник2
 
16.02.24
14:56
так что ли

Таб = СоздатьОтчетДЗ(ТекстПисьма, Пользователь);
Таб.ПоказатьУровеньГруппировокСтрок(0);
9 Новый1сник2
 
16.02.24
15:07
так не получается, пробовал еще так

Таб.ПоказатьУровеньГруппировокСтрок(2);
Таб.Записать(ПолноеИмяФайла, ТипФайлаТабличногоДокумента.XLSX);
тоже не получается
10 Новый1сник2
 
16.02.24
15:08
ВыгрузитьТДвФайл(Таб.ПоказатьУровеньГруппировокСтрок(2), ПолноеИмяФайла, ТекстПисьма);
так тоже не работает
11 Новый1сник2
 
16.02.24
15:09
подскажите кодом как добавить к Таб ?
12 Новый1сник2
 
16.02.24
15:21
попробовал разные варианты, не сохраняется в свернутом виде.
куда все таки добавить ПоказатьУровеньГруппировокСтрок(2) ?
13 Волшебник
 
16.02.24
15:23
(9) Сохраняйте в формат MXL
14 Momus
 
16.02.24
15:24
(3)  
ПроцессорВывода.УстановитьДокумент(Таб);      
ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных, Истина);  
Таб.ПоказатьУровеньГруппировокСтрок(2);
Возврат Таб;
15 Волшебник
 
16.02.24
15:25
или так:
ЭлементыФормы.ТабличныйДокумент.ПоказатьУровеньГруппировокСтрок(2);
16 Новый1сник2
 
16.02.24
15:34
(14) благодарю, получилось!