Имя: Пароль:
1C
1С v8
Настройка Условного оформления табличного поля в УФ
0 Patrio_
O_Muerte
 
31.08.15
15:39
День добрый
Есть форма, на ней реквизит типа "дерево значений", является именно реквизитом формы. Не могу достучаться к Условному оформлению этого объекта. Подскажите как?
1 gigi789
 
31.08.15
15:42
(0)     ЭлементУсловногоОформления = УсловноеОформление.Элементы.Добавить();
    Для Каждого ТекПоле Из Элементы[Настройки.Таблица].ПодчиненныеЭлементы Цикл
        ОформляемоеПоле = ЭлементУсловногоОформления.Поля.Элементы.Добавить();
        ОформляемоеПоле.Поле = Новый ПолеКомпоновкиДанных(ТекПоле.Имя);
    КонецЦикла;
    
    ЭлементОтбора = ЭлементУсловногоОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(Настройки.ЛевоеЗначение);    
    ЭлементОтбора.ВидСравнения = Настройки.ВидСравнения;
    ЭлементОтбора.ПравоеЗначение = Настройки.ПравоеЗначение;
    
    ЭлементУсловногоОформления.Оформление.УстановитьЗначениеПараметра(Настройки.ПарметрОформеления,Настройки.ЗначениеПараметра );
2 gigi789
 
31.08.15
15:44
Структура.Вставить("Таблица" ,"Деревои");
    Структура.Вставить("ЛевоеЗначение","Дерево.Уровень");
    Структура.Вставить("ВидСравнения",ВидСравненияКомпоновкиДанных.Равно);
    Структура.Вставить("ПравоеЗначение",0);
    Структура.Вставить("ПарметрОформеления", "Шрифт");
    Структура.Вставить("ЗначениеПараметра",Новый Шрифт(,, Истина));
    УсловноеОформелниеФормы(Структура);
3 gigi789
 
31.08.15
15:47
(1) Процедура УсловноеОформелниеФормы(Настройки) На форме Есть Дерево "Дерево" в результате (2)  все что нулевого уровня жирным выделяется
4 Patrio_
O_Muerte
 
31.08.15
16:07
Где взять эту процедуру?
5 Patrio_
O_Muerte
 
31.08.15
16:07
Или в (1) как раз сама процедура и описана?
6 Patrio_
O_Muerte
 
31.08.15
16:29
Структура = Новый Структура;
    Структура.Вставить("Таблица" ,"МоеДеревоНаФорме");
    Структура.Вставить("ЛевоеЗначение","МоеДеревоНаФорме.МоеПолеСравнения");
    Структура.Вставить("ВидСравнения",ВидСравненияКомпоновкиДанных.Равно);
    Структура.Вставить("ПравоеЗначение","000111");
    Структура.Вставить("ПарметрОформеления", "ЦветФона");
    Структура.Вставить("ЗначениеПараметра",WebЦвета.КрасноФиолетовый);
    
    ЭлементУсловногоОформления = УсловноеОформление.Элементы.Добавить();
    Для Каждого ТекПоле Из Элементы[Структура.Таблица].ПодчиненныеЭлементы Цикл
        ОформляемоеПоле = ЭлементУсловногоОформления.Поля.Элементы.Добавить();
        ОформляемоеПоле.Поле = Новый ПолеКомпоновкиДанных(ТекПоле.Имя);
    КонецЦикла;
    
    ЭлементОтбора = ЭлементУсловногоОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(Структура.ЛевоеЗначение);    
    ЭлементОтбора.ВидСравнения = Структура.ВидСравнения;
    ЭлементОтбора.ПравоеЗначение = Структура.ПравоеЗначение;
    
    ЭлементУсловногоОформления.Оформление.УстановитьЗначениеПараметра(Структура.ПарметрОформеления,Структура.ЗначениеПараметра );

Не взлетает. Что я неверно сделал?
7 Patrio_
O_Muerte
 
31.08.15
16:30
Структура.Вставить("ПарметрОформеления", "Шрифт");
   Структура.Вставить("ЗначениеПараметра",Новый Шрифт(,, Истина));

Шрифт тоже не прокатывает.
8 Patrio_
O_Muerte
 
31.08.15
16:30
ЭлементУсловногоОформления = УсловноеОформление.Элементы.Добавить();
Сдается мне вот тут надо как то к элементу формы правильно обратиться.
9 gigi789
 
31.08.15
16:44
(5) ага
10 Patrio_
O_Muerte
 
31.08.15
16:44
Отлично работает - просто надо больше одного элемента в списке.
11 gigi789
 
31.08.15
16:46
(10) спасибо не надо
12 gigi789
 
31.08.15
16:46
(11) Все равно не булькает
13 Patrio_
O_Muerte
 
01.09.15
15:13
Спасибо.