Имя: Пароль:
1C
1С v8
Отбор строк ТЧ
0 mzelensky
 
28.02.13
14:34
Доброго всем!
НА форме есть ТЧ. В пользовательском режиме делаю стандартный отбор по каким-нибудь значениям в этой ТЧ. В результате мне выводится ограниченный набор строк, которые попадают под мои ограничения (например 10 из 100).

Теперь хочу сделать кнопочку "Выделить отобранные" - по этой кнопке нужно отобрать эти самые 10 строк (которые удовлетворяют моим условиям и грубо говоря отображаются в ТЧ) и затем сделать с ними чего-нибудь (это уже не важно).

Вот как отобрать строки ТЧ, которые отображаются на форме в табличном поле (т.е. удовлетворяют наложенным в пользовательском режиме отборам)
1 Мимохожий Однако
 
28.02.13
14:34
Осталось выяснить платформу и режим запуска
2 mzelensky
 
28.02.13
14:35
О да, извините....

Платформа 8.2.16.х Толстый клиент, обычные формочки :)
3 mzelensky
 
28.02.13
14:38
(0) Разумеется под "Вот как отобрать строки ТЧ, которые отображаются на форме в табличном поле" я понимаю отобрать программно сами строки. НУ, например, сформировать массив строк ТЧ.
4 lxndr
 
28.02.13
14:38
(0)
1. для таб. поля РежимВыделения := Множественный
2. Ctrl + A
5 mzelensky
 
28.02.13
14:39
(4) И что мне это даст???

Мне не просто их ВЫДЕЛИТЬ нужно, а (3)
6 Reset
 
28.02.13
14:43
В построитель закинуть тч как источник и отборы
7 lxndr
 
28.02.13
14:46
(3) тогда +(6)
8 lxndr
 
28.02.13
14:46
Построитель = Новый ПостроительЗапроса;
   Построитель.ИсточникДанных = Новый ОписаниеИсточникаДанных(Товары);
   Для каждого ЭлементОтбора Из ЭлементыФормы.Товары.ОтборСтрок Цикл
       ОтборПостроителя = Построитель.Отбор.Добавить(ЭлементОтбора.Имя);
       ЗаполнитьЗначенияСвойств(ОтборПостроителя, ЭлементОтбора);
   КонецЦикла;
   Построитель.Выполнить();
   Построитель.Результат.Выгрузить().ВыбратьСтроку();
9 mzelensky
 
28.02.13
14:51
(6)(8) интересный вариант...

а проще низя?!
10 lxndr
 
28.02.13
14:58
(9) других вариантов не знаю. Можно через СКД конечно провернуть, но проще точно не получится
11 mzelensky
 
28.02.13
15:01
(10) Ладно, спасибо и на том.

Вроде банальная хотелка, а такие геморои :(
12 Бледно Золотистый
 
28.02.13
15:04
Для Каждого ТекСтрока Из ТЧ Цикл
 Если ЭлементыФормы.ТП.ПроверитьСтроку(ТекСтрока) Тогда
  ТекСтрока.Пометка = Истина;
 КонецЕсли;        
КонецЦикла;
13 mzelensky
 
28.02.13
15:07
(12) уже лучше :)