Имя: Пароль:
1C
1С v8
УФ Скрытие строк в ТЧ через условное оформление
,
0 askharlov
 
26.07.14
22:33
Решил скрыть строки в Таблице привязанной к ТЧ документа через условное оформление. Написал код:
ЭлементУО = УсловноеОформление.Элементы.Добавить();
ЭлементУО.Оформление.УстановитьЗначениеПараметра("Видимость", Ложь);
ЭлементУсловия = ЭлементУО.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементУсловия.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.Результаты.Bib");
ЭлементУсловия.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементУсловия.ПравоеЗначение = 1;

Для Каждого Колонка Из Элементы.Результаты1.ПодчиненныеЭлементы Цикл
    ОформляемоеПоле = ЭлементУО.Поля.Элементы.Добавить();    
    ОформляемоеПоле.Поле = Новый ПолеКомпоновкиДанных(Колонка.Имя);
КонецЦикла;

Строки не скрываются.
Попробовал изменить условие и вместо видимости покрасить строки в другой цвет. С тем же кодом получилось.
А при установке Видимость = Ложь строки остаются на экране.

Что я делаю не так?
1 Фокусник
 
26.07.14
22:35
(0) НЕ видимость строк - это, наверное, отбор строк.
2 Wobland
 
26.07.14
22:38
ну расскажи уже тупому, на кой ляд сдался фильтр в ТЧ. ну не догоняю я, зачем юзеру это нужно
3 askharlov
 
26.07.14
22:38
(1) Отбор не подходит, потому что мне надо ставить другой вид сравнения (ВИнтервале). Это в отладочном примере я использовал Равно.
4 askharlov
 
26.07.14
22:41
(2) Так я же тебе описал свою спортсменскую задачу в предыдущей теме. Через ОтборСтрок работать с 20-ю табличными частями не получилось. Так я решил через условное оформление (в Инете пишут, что так проблема решается, но при большом кол-ве строк ТЧ могут быть тормоза)
5 Wobland
 
26.07.14
22:43
(4) да помню я. тут какая-то проблема проектирования, кривое решение которой приводит к таким вот вопросам
6 Wobland
 
26.07.14
22:46
+(5) я всего не вижу, а так - возрастная группа напрашивается каким-то перечислением. но! со временем она меняется... интересная задачка, но смотреть на неё надо с точки зрения объета, никак не формы
7 thezos
 
26.07.14
22:48
не по-человечески это, скрывать правду от пользователя ) вот смотрит в тч, видит две строчки, а на самом деле их там дохренище.. и получает неочевидный для себя результат при проведении такого документа. так что плюсую к (5)
8 askharlov
 
26.07.14
22:49
(6) возрастная группа меняется постоянно. могут по-разному группировать года на каждых соревнованиях.
(4) может и кривое, но мне кажется гибким и красивым (удобно и пользователю и программисту). На обычных формах я знаю решение, с учетом опыта обыч.форм и проектировал. А тут наступаю на грабли
9 Фокусник
 
26.07.14
22:50
(3) а если ввести реквизит в ТЧ Видимость (булево), заполнить его по условию и соответственно по нему делать отбор?
10 askharlov
 
26.07.14
22:51
Вопрос же простой: кто-то имел опыт со скрытием строк через УО?
11 askharlov
 
26.07.14
22:53
(9) Спасибо за идею, но не подходит. Одна ТЧ объекта отображается в 20-ти таблицах формы с разным отбором (через св-во УО "видимость") в каждой
12 Wobland
 
26.07.14
22:53
(8) могёшь ТЗ (или что-то на него похожее) кинуть в почту? в двух-трёх предложениях на русском языке. я сегодня не могу, но завтра после обеда помедитировал бы. просто из любви к искусству
13 askharlov
 
26.07.14
22:54
(9) Хотя это идея! Я могу вместо видимости писать в доп.колонку признак того в какой таблице отображать. Спасибо Фокусник!
14 Фокусник
 
26.07.14
22:56
(11) значит 20 реквизитов :)
Их же можно как реквизиты формы добавить, а не реквизиты ТЧ (если не туплю в субботу вечером:)
15 Фокусник
 
26.07.14
22:57
(13) да, если 1 строка только в одной таблице отображается, то лучше 1 реквизит, чем 20 :)
16 askharlov
 
26.07.14
22:58
(14) тоже идея. СПАСИБО!! Сейчас реализую одну из них
(13) ОК, думаю
СПАСИБО
17 askharlov
 
26.07.14
23:02
(12) Вобланд, ТЗ нету, оно у меня в голове + 1 страница функциональности тезисного текста, чтоб ничего в пылу работы не упустить. Но по этой странице непосвященный в тему человек сути не поймет.
Если твоя тяга к искусству велика, то могу за часок-другой накропать ТЗ, но это попозжее.
18 askharlov
 
26.07.14
23:05
(12) Если есть желание, то могу скинуть конфу на обычных формах с горнолыжными соревнованиями. Там своя специфика, но на 70% схожи.
19 askharlov
 
26.07.14
23:07
(14) через реквизиты формы не назначишь, потому что не будет работать по ним отборСтрок. Так что лучшая идея, на мой взгляд (9)
20 Wobland
 
26.07.14
23:13
(18) желание есть, в общих чертах представление о предметной области имею (биатлон вон смотрел в живую ;)). техзадание - конечно, перебор, но вся специфика лично мне непонятна. я б вообще всю конфигурацию делал так, чтоб вопросов типа (0) не возникало. пиши, подумаем...
21 UrKa_Bendera
 
27.07.14
03:52
а чим условне не подобаеться ?
22 SeraFim
 
27.07.14
11:24
смутило:
Для Каждого Колонка Из Элементы.Результаты1.ПодчиненныеЭлементы Цикл
    ОформляемоеПоле = ЭлементУО.Поля.Элементы.Добавить();    
    ОформляемоеПоле.Поле = Новый ПолеКомпоновкиДанных(Колонка.Имя);
КонецЦикла;
зачем кидать список колонок?
В диалоге вместо всех колонок можно указать всю таблицу целиком
23 askharlov
 
27.07.14
14:04
(21) как писал - оно не скрыло строки даже когда установил видимость=Ложь всем ячейкам
(22) А можно пример синтаксиса? Как засунуть в поля всю таблицу без перебора полей.
P.s: свой синтаксис взял из книжки, но там оформлялось только одно поле.