Для начала нужно определить по какому признаку(условию) надо выделять те или иные строки(какое-то колво больше чего-то или одна из колонок равна чему-то одному).
Далее писать ваш код
Функция ИзменитьЦвет(Номенклатура)
ЭтаФорма.УсловноеОформление.Элементы.Очистить();
ЦветКрасный = Новый Цвет(255,0,0); //красный
ЭлементУсловногоОформления = УсловноеОформление.Элементы.Добавить();
ОформляемоеПоле = ЭлементУсловногоОформления.Поля.Элементы.Добавить();
ОформляемоеПоле.Поле = Новый ПолеКомпоновкиДанных("Товары");
ЭлементОтбора = ЭлементУсловногоОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.Товары.Номенклатура");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = Номенклатура;
ЭлементУсловногоОформления.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветКрасный);
КонецФункции
НО верно установить ключевые элементы:
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.Товары.Номенклатура");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = Номенклатура;
Левое значение поле для сравнение, правое значение с которым сравнивают.
Выполнять этот код при изменении не даст нужного результата, выполнять его следует один раз например в событие ПриСозданииНаСервере.
Так же стоит отметить это поле
ОформляемоеПоле.Поле = Новый ПолеКомпоновкиДанных("Товары");
Здесь задается поле для которого будет использоваться условное оформление. Не уверен что поле для оформления лучше ставить всю таблицу.
Пример моего использования такого кода
ЭлементУсловногоОформления = УсловноеОформление.Элементы.Добавить();
ОформляемоеПоле = ЭлементУсловногоОформления.Поля.Элементы.Добавить();
ОформляемоеПоле.Поле = Новый ПолеКомпоновкиДанных("ТаблицаЗначенийНаименованиеCCS");//одна колонка таблицы именно элемент формы а не реквизит объекта формы.
ЭлементОтбора = ЭлементУсловногоОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ТаблицаЗначений.Наименование1");//реквизит [объекта] формы
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.НеРавно;
ЭлементОтбора.ПравоеЗначение = Новый ПолеКомпоновкиДанных("ТаблицаЗначений.Наименование2"); //условие: если одна колонка не равна второй тогда выделять красным
ЭлементУсловногоОформления.Оформление.УстановитьЗначениеПараметра("ЦветТекста", WebЦвета.Красный);
з.ы. Ваш код будет менять менять цвета строк таблицы только тех у которых задана указанная номенклатура
пример моего кода устанавливает цвет для одной ячейки таблицы если одна колонка строки не равна второй.