Имя: Пароль:
1C
1С v8
параметры и отбор отчета
0 Doman26
 
13.09.11
15:37
СхемаКомпоновкиДанных  = Отчеты.ОтчетПоШинамНаТС.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
   КомпоновщикНастроек = Новый КомпоновщикНастроекКомпоновкиДанных;
   КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных));
   КомпоновщикНастроек.ЗагрузитьНастройки(СхемаКомпоновкиДанных.НастройкиПоУмолчанию);
   ДатаП = КомпоновщикНастроек.Настройки.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("Дата"));
   МашинаП = КомпоновщикНастроек.Настройки.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("Машина"));
 ДатаП.Использование = Истина;
МашинаП.Использование = Истина;
ДатаП.Значение = ТекущаяДата();
МашинаП.Значение = Ссылка;
ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;  
   МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных,КомпоновщикНастроек.Настройки,ДанныеРасшифровки);
   ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
   ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки,,ДанныеРасшифровки, Истина);  
   ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
   ФормаОтчета = Отчеты.ОтчетПоШинамНаТС.ПолучитьФорму();
   ПроцессорВывода.УстановитьДокумент(ФормаОтчета.ЭлементыФормы.Результат);
   ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
   ФормаОтчета.Открыть();

отчет открывается и работает с установленным отбором и параметрами, но как их и оставить такими(при новом формировании выводит пустой отбор и параметры)
1 Doman26
 
13.09.11
15:41
вернее вот так с отбором

СхемаКомпоновкиДанных  = Отчеты.ОтчетПоШинамНаТС.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных1");
   
    КомпоновщикНастроек = Новый КомпоновщикНастроекКомпоновкиДанных;
    КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных));
    КомпоновщикНастроек.ЗагрузитьНастройки(СхемаКомпоновкиДанных.НастройкиПоУмолчанию);
   
    ДатаП = КомпоновщикНастроек.Настройки.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("Период"));
   
   
    ЭлементОтбора = КомпоновщикНастроек.Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    ЭлементОтбора.Использование = Истина;
    ЭлементОтбора.ЛевоеЗначение  = КомпоновщикНастроек.Настройки.ДоступныеПоляОтбора.НайтиПоле(Новый ПолеКомпоновкиДанных("Машина")).Поле;
    ЭлементОтбора.ПравоеЗначение = Ссылка;
   
    ДатаП.Использование = Истина;
   
   
    ДатаП.Значение = ТекущаяДата();
       
    ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;
    КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
   
    МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных,КомпоновщикНастроек.Настройки,ДанныеРасшифровки);
   
    ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
    ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки,,ДанныеРасшифровки, Истина);
   
    ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
   
    ФормаОтчета = Отчеты.ОтчетПоШинамНаТС.ПолучитьФорму();
   
    ПроцессорВывода.УстановитьДокумент(ФормаОтчета.ЭлементыФормы.Результат);
    //ЭлементыФормы.Результат.Очистить();
    //ПроцессорВывода.УстановитьДокумент(ЭлементыФормы.Результат);    
    ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
   
    ФормаОтчета.Открыть();
    ДатаП.Использование = Ложь;
    ЭлементОтбора.Использование = Ложь;
2 + 2 = 3.9999999999999999999999999999999...