Имя: Пароль:
1C
1С v8
Перебрать ТЗ по отбору созданным пользователем.
0 St17
 
11.07.13
15:31
Добрый день.
1с 8.2 УТ измененная.
Задача.
На форме есть КоманднаяПанель с СисточникомДействий ТЗ и ТЗ
Пользователь фильтр настраивает как ему хочется. А мене же нужно получить только строки по отбору.
Не могу понять как отобрать. Не хочется кидать кучу реквизитов т.к. стандартный отбор (фильтр) очень нравиться.

Подскажите куда копать?
1 shamannk
 
11.07.13
15:32
ПроверитьСтроку
2 ptiz
 
11.07.13
15:37
Не знаю как в управляемых формах, но в обычных пользователь не имеет возможности накладывать отборы на ТЗ. Только на таб.часть.
3 St17
 
11.07.13
16:06
Извиняюсь таб. часть.
4 shamannk
 
11.07.13
16:08
(3) к (1)
5 Ненавижу 1С
 
гуру
11.07.13
16:09
(2) на табличную часть тоже не может, только на табличное поле с табличной частью
6 ptiz
 
11.07.13
16:12
Построитель = Новый ПостроительОтчета;
   Построитель.ИсточникДанных = Новый ОписаниеИсточникаДанных(ТабЧасть);
   Для каждого ЭлементОтбора Из ТабПоле.ОтборСтрок Цикл
   
       Если ЭлементОтбора.Использование Тогда
           НовыйЭлемент = Построитель.Отбор.Добавить(ЭлементОтбора.ПутьКДанным, ЭлементОтбора.Имя, ЭлементОтбора.Представление);
           НовыйЭлемент.ВидСравнения = ЭлементОтбора.ВидСравнения;
           НовыйЭлемент.Значение = ЭлементОтбора.Значение;
           НовыйЭлемент.ЗначениеС = ЭлементОтбора.ЗначениеС;
           НовыйЭлемент.ЗначениеПо = ЭлементОтбора.ЗначениеПо;
           НовыйЭлемент.Использование = Истина;
       КонецЕсли;
   
   КонецЦикла;
   РезультатЗапроса = Построитель.Результат;
7 St17
 
11.07.13
16:23
Подскажите какой метод быстрее? (1) или (6)
8 St17
 
11.07.13
16:37
Оба метода работают спасибо за помощь.