УТ 11.4 обработка "ПодборТоваровВДокументПродажи"

Нужно раскрасить строку или ячейку строки таблицы Корзина по условию.

Добавляю программно условное оформление

```1c
    Элемент = УсловноеОформление.Элементы.Добавить();

    ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
    ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.КорзинаНоменклатура.Имя);

    ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.Корзина.Номенклатура");
    ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
    ОтборЭлемента.ПравоеЗначение = МассивТоварыУсловияВхождения;

    Элемент.Оформление.УстановитьЗначениеПараметра("ЦветФона", Новый Цвет(0, 255, 0));
```

Проблема в том, что условное оформление не отрабатывает.

Что делаю не так?
---
А, невнимательно смотрю, не выспался) Короче, с количеством у меня работает. Может, с МассивТоварыУсловияВхождения что не так? Там не группы случаем?
---
У меня сделана своя процедура к-рая добавляет УО по заданной структуре, держи может пригодится:

```1c
    СтруктураОформления = Новый Структура("ЦветФона", WebЦвета.Желтый);
    МассивУсловия = Новый Массив;
    МассивУсловия.Добавить(Новый Структура("УсловиеЛевое, ВидСравнения", "СтатьяРегл", ВидСравненияКомпоновкиДанных.НеЗаполнено));
    МассивУсловия.Добавить(Новый Структура("УсловиеЛевое, УсловиеПравое", "ЭтоГруппа", Ложь));
    МассивОформляемыхПолей = Новый Массив;
    МассивОформляемыхПолей.Добавить("СтатьяРегл");
    СтруктураУО = Новый Структура;
    СтруктураУО.Вставить("СтруктураОформления" , СтруктураОформления);
    СтруктураУО.Вставить("СтруктураУсловия" , МассивУсловия);
    СтруктураУО.Вставить("МассивОформляемыхПолей", МассивОформляемыхПолей);
    ДобавитьЭлементУсловногоОформления(Список.УсловноеОформление, "Отсутствует статья регл.", СтруктураУО);

    // Процедура добавляет элемент условного оформления
    //
    // Параметры:
    // УсловноеОформление - УсловноеОформлениеКомпановкиДанных
    // Представление - Строка
    // СтруктураУО - Структура ("СтруктураОформления, СтруктураУсловия, МассивОформляемыхПолей")
    // Позиция - Число (Позиция, в которую необходимо добавить оформление.
    // Если = Неопределено, тогда добавляется в конец)
    //
    Процедура ДобавитьЭлементУсловногоОформления(УсловноеОформление, Представление, СтруктураУО, Позиция = Неопределено) Экспорт

    // Раскроем структуру УО
    СтруктураОформления = СтруктураУО.СтруктураОформления;
    СтруктураУсловия = СтруктураУО.СтруктураУсловия;
    МассивОформляемыхПолей = СтруктураУО.МассивОформляемыхПолей;

    // Новый элемент условного оформления
    Если Позиция = Неопределено Тогда
    ЭлементУО = УсловноеОформление.Элементы.Добавить();
    Иначе
    ЭлементУО = УсловноеОформление.Элементы.Вставить(Позиция);
    КонецЕсли;
    //ЭлементУО = УсловноеОформление.Элементы.Добавить();
    ЭлементУО.Представление = Представление;
    ЭлементУО.Использование = Истина;

    // Оформление
    Для каждого КлЗн Из СтруктураОформления Цикл
    Параметр = КлЗн.Ключ;
    Значение = КлЗн.Значение;
    ЭлементУО.Оформление.УстановитьЗначениеПараметра(Параметр, Значение);
    КонецЦикла;

    // Условие
    Если ТипЗнч(СтруктураУсловия) = Тип("Массив") Тогда
    МассивУсловий = СтруктураУсловия;
    Иначе
    МассивУсловий = Новый Массив;
    МассивУсловий.Добавить(СтруктураУсловия);
    КонецЕсли;

    Для Каждого СтрУсловия Из МассивУсловий Цикл

    УсловиеУО = ЭлементУО.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    УсловиеУО.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(СтрУсловия.УсловиеЛевое);
    Если СтрУсловия.Свойство("ВидСравнения") Тогда
    // По умолчанию: ВидСравненияКомпоновкиДанных.Равно
    УсловиеУО.ВидСравнения = СтрУсловия.ВидСравнения;
    КонецЕсли;
    Если СтрУсловия.Свойство("УсловиеПравое") Тогда
    УсловиеУО.ПравоеЗначение = СтрУсловия.УсловиеПравое;
    КонецЕсли;

    КонецЦикла;

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

    КонецПроцедуры // ДобавитьЭлементУсловногоОформления()
```
---
Использование забыл?
---
что с Использовать, что без результат один
не применяется, даже если через конфигуратор условное оформление делать, например раскрасить ячейку "Количество" если введено больше заданного числа
---
А поля оформления кто указывать будет?

```1c
    ПолеОформления = Элемент.Поля.Элементы.Добавить();
    ПолеОформления.Поле = Новый ПолеКомпоновкиДанных("Объект.Корзина.Номенклатура");
```
---
А, невнимательно смотрю, не выспался) Короче, с количеством у меня работает. Может, с МассивТоварыУсловияВхождения что не так? Там не группы случаем?
---
вся соль была в том. что в МассивТоварыУсловияВхождения передавался именно массив, а не список
спасибо за наводку
---
Подскажите, а список здесь откуда берется, заполняется?

Тоже пишу условное оформление для таблицы на форме.
---
это условие на условное оформление, уж простите за тавтологию
в (8) пример обработки мне давали, я по ней делал себе
т.е. условное оформление добавлялось программно, а предварительно для него рассчитывался массив элементов для применения
вот вместо массива необходимо передавать список элементов и все заработает
---
В модуле формы есть функция УстановитьУсловноеОформление, внутри которой все элементы условного оформления очищаются. Соответственно, если вы создаете свое оформление ДО того как она вызывается, то в дальнейшем оно удалится.
---
это понятно, но я свое вызываю после