Имя: Пароль:
1C
1С v8
Отборы в динамическом списке и запросе
0 an_str
 
12.02.13
11:37
Подскажите, пожалуйста...На форме есть динамический список с произвольным запросом....Пользователь может наложить на этот список определенные отборы (например, отобрать информацию по организации, сотруднику и т.д.). Также на форме имеется таблицаЗначений в которую необходимо вывести количество определенных записей этого динамического списка...Например, она имеет след.вид:

Наименование    Количество
Организация1       5
Организация2       2
Организация3       3

Так как я в динамическом списке подсчитать кол-во записей не могу, пришлось делать отдельный запрос и считать по его результату количество. Вопрос, как наложить отборы имеющиеся на динамическом списке на мой запрос???
1 an_str
 
12.02.13
14:49
Решила запихать запрос в скд итам наложить потом отбор и выгрузить это дело в таблицу значений...Но что-то...таблица значений пустая((( не подскажите, что делаю не так?

СКД = Новый СхемаКомпоновкиДанных;
   
    //Опишем источники как они есть в отчете
    ИсточникДанных = СКД.ИсточникиДанных.Добавить();
    ИсточникДанных.Имя = "ИсточникДанных1";
    ИсточникДанных.ТипИсточникаДанных = "Local";
    ИсточникДанных.СтрокаСоединения  ="";

    НаборДанных = СКД.НаборыДанных.Добавить(Тип("НаборДанныхЗапросСхемыКомпоновкиДанных"));
    НаборДанных.Имя = "НаборДанных1";
    НаборДанных.ИсточникДанных = "ИсточникДанных1";
    НаборДанных.Запрос = ТекстЗапроса;

    КомпоновщикНастроек = Новый КомпоновщикНастроекКомпоновкиДанных;
    КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СКД));
   
    ДатаНачала = КомпоновщикНастроек.Настройки.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ДатаНачала"));
    ДатаКонца = КомпоновщикНастроек.Настройки.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ДатаКонца"));
   
    ДатаНачала.Использование = Истина;
    ДатаНачала.Значение =Объект.ДатаНачала;
    ДатаКонца.Использование = Истина;
    ДатаКонца.Значение =Объект.ДатаКонца;
    КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
    МакетКомпоновки = КомпоновщикМакета.Выполнить(СКД, КомпоновщикНастроек.Настройки,,, Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));
   
    ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
    ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки,,, Истина);
   
    ТаблицаЗначений = Новый ТаблицаЗначений;
   
    ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений;
    ПроцессорВывода.УстановитьОбъект(ТаблицаЗначений);
    ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
2 zladenuw
 
12.02.13
14:50
ТаблицаЗначений = ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
3 an_str
 
12.02.13
14:52
(2)все равно пусто...