Имя: Пароль:
1C
1С v8
Отбор в управляемой форме 8.2
,
0 timdim
 
24.07.12
14:31
Добрый день! Есть управляемая форма обработки, на форме размещена Табличная часть обработки. Как сделать отбор строк, у которых значение в определенной колонке больше заданного?(т.е не по равенству). При снятии отбора на форме должны отражаться все записи(как отбор для динамического списка). Свойство ОтборСтрок не подходит, т.к. отбор только по равенству. Через построитель(при загрузке результата отбора построителяв таблицу) теряется изначальная таблица и после снятия таблица пуста. Может кто подскажет как сделать? На 8.1 все намного проще в этом плане.
1 timdim
 
24.07.12
14:35
поиск по форуму ничем не помог
2 iceman2112
 
24.07.12
14:44
Элементы.ТвояТЧ.Отбор или ОтборСтрок

Расширение таблицы формы для табличных частей (Form table extension for tabular sections)
ОтборСтрок (RowFilter)
Использование:

Чтение и запись.
Описание:

Тип: Неопределено; ФиксированнаяСтруктура.
Позволяет установить отбор по значению колонки.
В качестве ключа используется имя реквизита табличной части, а в качестве значения - значение, по которому осуществляется отбор.
Чтобы снять отбор нужно присвоить свойству либо значение Неопределено, либо пустую ФиксированнаяСтруктура.

Доступность:

Тонкий клиент, веб-клиент, сервер, толстый клиент.
Изменение свойства на клиенте может потребовать обращения к серверу.
3 timdim
 
24.07.12
14:48
(2) У Элементы.ТЧ нет свойства отбор, а ОтборСтрок не подходит, т.к мне нужен отбор на неравенство
4 jump if overflow
 
24.07.12
14:49
условное оформелние формы на видимость
5 timdim
 
24.07.12
15:02
(4) Через ДоступныеПоляОтбора или каким образом?
6 jump if overflow
 
24.07.12
15:04
Форма - свойства формы - условное оформление
7 timdim
 
24.07.12
15:26
(6) Добавил в условное оформление настройку по видимости всех реквизитов ТЧ. Если ставлю галку "Использование", то при открытии формы все работает. Попытался снять галку и при нажатии на кнопку формы ее устанавливаю(использование взводится), а вот форма не перерисовывается. Написал Элементы.ТЧ.Обновить() - тоже не помогает, ЧЯДНТ?
8 jump if overflow
 
24.07.12
15:30
&НаКлиенте
Процедура Команда1(Команда)
       
  ВключитьУОНаСервере();

КонецПроцедуры

&НаСервере
Процедура ВключитьУОНаСервере()
   
УО = ЭтаФорма.УсловноеОформление.Элементы.Получить(0);

УО.Использование =  ?(УО.Использование, Ложь, Истина);
 
КонецПроцедуры


у меня работает
9 timdim
 
24.07.12
15:35
(8) таким же образом и делаю. Но форма почему то не перерисосывается. Может стоит форму обновить с сервера(как в 8.1 перечитать)?
10 timdim
 
24.07.12
15:37
(8) а какие поля выбраны в оформляемых? я выбрал все поля ТЧ, чтобы строка скрывалась, так?
11 freeride81
 
24.07.12
15:37
Попробуй
ЭтаФорма.Элементы.ТЧ.Обновить()
12 timdim
 
24.07.12
15:47
(11) нифига не помогает... хз, что не так.
13 jump if overflow
 
24.07.12
15:48
(10) да

ОбновитьОтображениеДанных() но врятли поможет.
14 timdim
 
24.07.12
15:49
(13) Странно. сейчас вместо видимость поставил свойство цвет фона - все работает
15 timdim
 
24.07.12
15:54
Ну это звиздец... Раньше у меня в конфигураторе стояло по умолчанию использование ложь, поставил в истина и заработало, дурдом
16 timdim
 
24.07.12
16:11
(13) Спасибо за идею, но очень тормозит условное оформление. Обошелся доп.колонкой и свойством ОтборСтрок