Имя: Пароль:
1C
1С v8
Как установить поле «Оформление» при программном добавлении условного оформления
0 comp2006
 
25.09.15
14:33
Как установить поле «Оформление» при программном добавлении условного оформления в СКД 8.1?
Вот рабочий код для СКД 8.2:
НовыйЭлементУсловногоОформления = УсловноеОформление.Элементы.Добавить();
НовыйЭлементУсловногоОформления.Использование = Истина;
//Отбор    
ЭлементОтбора = НовыйЭлементУсловногоОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.Использование = Истина;
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Признак");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = 1;
НовыйЭлементУсловногоОформления.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.Желтый);
Но в СКД 8.1 ещё нет метода «УстановитьЗначениеПараметра»
Пробую пошагово:
//Область(Оформляемые поля)    
ПолеОформления = НовыйЭлементУсловногоОформления.Поля.Элементы.Добавить();
ПолеОформления.Поле = Новый ПолеКомпоновкиДанных("Документ");
ПолеОформления.Использование = Истина;
Вопрос, как добавить само Оформление (("ЦветФона", WebЦвета.Желтый)?
1 comp2006
 
25.09.15
15:26
Для СКД 8.1
//1 Вариант. По имени Параметра  
Элемент = НовыйЭлементУсловногоОформления.Оформление.Элементы.Найти("ЦветФона");
Если НЕ Элемент = Неопределено Тогда
     Элемент.Значение = WebЦвета.Желтый;
     Элемент.Использование = Истина;
КонецЕсли;

//1 Вариант. По индексу Параметра
Элемент = НовыйЭлементУсловногоОформления.Оформление.Элементы[0];
Элемент.Значение = WebЦвета.Желтый;
Элемент.Использование = Истина;
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан