Имя: Пароль:
1C
 
Не применяется условное оформление
0 Nyarlathotep
 
27.12.17
16:41
Всем привет, делаю программно условное оформление для формы списка вот так:

Оформление1 = Список.УсловноеОформление.Элементы.Добавить();
    Оформление1.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.БледноЗеленый);
    
    Отбор1 = Оформление1.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    Отбор1.ПравоеЗначение = Истина;
    Отбор1.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
    Отбор1.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Согласован");
    Отбор1.Использование = Истина;
    
    Отбор2 = Оформление1.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    Отбор2.ПравоеЗначение = 1;
    Отбор2.ВидСравнения = ВидСравненияКомпоновкиДанных.БольшеИлиРавно;
    Отбор2.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ккСобран");
    Отбор2.Использование = Истина;
    
    Оформление2 = Список.УсловноеОформление.Элементы.Добавить();
    Оформление2.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.БледноЛиловый);
    
    Отбор3 = Оформление2.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    Отбор3.ПравоеЗначение = Истина;
    Отбор3.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
    Отбор3.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Согласован");
    Отбор3.Использование = Истина;
    
    Отбор4 = Оформление2.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    Отбор4.ПравоеЗначение = 0;
    Отбор4.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
    Отбор4.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ккСобран");
    Отбор4.Использование = Истина;

Первое оформление (с бледно-зеленым цветом) работает, строки раскрашивает. Втрое, с бледно-лиловым, не работает, строки не раскрашиваются, хотя условие выполняется. Что я делаю не так?
1 Nyarlathotep
 
27.12.17
16:46
(0) Соответственно, нужно, чтобы оба условия работали одновременно, в одном списке, строки, соответствующие бледно-зеленому цвету красились бледно-зеленым, бледно-лиловому - бледно-лиловым. Как это правильно сделать?
2 s03
 
27.12.17
16:49
(0) Отбор4.ПравоеЗначение = 0;
    Отбор4.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;

вот здесь, думаю, что-то случилось, может у тебя в этом поле не "0",  а что-то другое, например неопределено или другое "пустое значение". Попробуй "Значение не заполнено" вместо "Равно"
3 Timon1405
 
27.12.17
16:55
ТипГруппыЭлементовОтбораКомпоновкиДанных (DataCompositionFilterItemsGroupType)
ТипГруппыЭлементовОтбораКомпоновкиДанных (DataCompositionFilterItemsGroupType)
Значения

ГруппаИ (AndGroup)
ГруппаИли (OrGroup)
ГруппаНе (NotGroup)

Описание:

Содержит возможные типы групп элементов отбора системы компоновки данных.

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

Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение.
Данный объект может быть сериализован в/из XML. Может использоваться в реквизитах управляемой формы. Данный объект может быть сериализован в/из XDTO. Тип XDTO, соответствующий данному объекту, определяется в пространстве имен {http://v8.1c.ru/8.1/data-composition-system/settings}. Имя типа XDTO: DataCompositionFilterItemsGroupType