На форме имеется Таблица Значений.
При изменении данных строки хотелось бы эту строку пометить цветом, есть ли возможность как-то это сделать?
---
Свойства формы - Условное оформление.
---
УП или обычные формы?
---
УП - будь они неладны))
---
можно через условное оформление, условия добавь
---
у меня как получается, условия как такового то нет, нужно просто выделить строку после того как внесли изменения в неё
Через условное формление не сработало нифига, по-всякому пробовал
---
Сделай так, чтобы условие было.
Добавь в таблицу реквизит формы булевый, который устанавливается в Истина при изменении строки.
И установить отбор по этому реквизиту и оформление.
---
Или добавь условие программно при изменении строки )

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

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

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

    Элемент.Использование = Истина;

    Добавим поля оформления, если ничего не добавлять, то система применит оформления ко всей строке:

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

    &НаКлиенте
    Процедура ТаблицаПриИзменении(Элемент)
    ТаблицаПриИзмененииНаСервере();
    КонецПроцедуры
```
---
не раскрашивает :(

```1c
    &НаКлиенте
    Процедура ТаблицаБанковскиеСчетаВБазеПриИзменении(Элемент)
    Элемент.ТекущиеДанные.Изменение = Истина;
    ОформитьСтрокуНаСервере("Изменение", Истина);
    Если ЗначениеЗаполнено(лКопирование) И лКопирование Тогда
    Элемент.ТекущиеДанные.Основной = Ложь;
    Элемент.ТекущиеДанные.ГУИД = Неопределено;
    КонецЕсли;
    КонецПроцедуры

    &НаСервере
    Процедура ОформитьСтрокуНаСервере(ИмяПоля, Значение)
    ЭлементУО = УсловноеОформление.Элементы.Добавить();
    ЭлементУО.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.СеребристоСерый);
    ЭлементУсловия = ЭлементУО.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    ЭлементУсловия.ЛевоеЗначение = ИмяПоля;
    ЭлементУсловия.ВидСравнения= ВидСравненияКомпоновкиДанных.Равно;
    ЭлементУсловия.ПравоеЗначение = Значение;
    КонецПроцедуры
```
---
Удали эту процедуру и ее вызовы:
 ОформитьСтрокуНаСервере

Нет никакой необходимости программно устанавливать условное оформление.
Тем более при каждом редактировании таблицы.
Да и не корректна она - не указано что именно оформлять.

Условное оформление устанавливается 1 раз.
Если так уж хочется программно - то при создании на сервере.

Вместо этой процедуры настрой интерактивно условное оформление для формы в конфигураторе для реквизита ТЧ "Изменение".
---
Настрой интерактивно условное оформление для формы в конфигураторе для реквизита ТЧ "Изменение".

а где именно это настраивается?
---
Свойства формы - Условное оформление.
---
ёпрст, а я в свойствах табличной части ищу, получилось, спасибо!
---
Спасибо! Очень пригодилось!
---
Если Обычные формы то так :
```1c
    Процедура ТаблицаПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)

    ОформлениеСтроки.ЦветФона = webцвет.зеленый; ///Цвет
    ОформлениеСтроки.Ячейки.Картинка = библиотекаКартинок.ПерваяКартинка; ///Картинка
    Конецпроцедуры
```
---
в обычных всё просто ))
---
Сделать это можно примерно так.

1. Добавляете в таблицу новую колонку, как реквизит формы, например "Изменена" булева типа. Реализуете обработчик изменения нужных реквизитов, где взводите флаг изменения. Если таких реквизитов немного, то для каждого можно реализовать обработчик, например:

```1c
    &НаКлиенте
    Процедура ТоварыНоменклатураПриИзменении(Элемент)
    Элементы.Товары.ТекущиеДанные.Изменена = Истина;
    КонецПроцедуры
```
Если же реквизитов много, можно реализовать обработчик изменения всей строки:

```1c
    &НаКлиенте
    Процедура ТоварыПриОкончанииРедактирования(Элемент, НоваяСтрока, ОтменаРедактирования)
    Если Не ОтменаРедактирования Тогда
    Элементы.Товары.ТекущиеДанные.Изменена = Истина;
    КонецЕсли;
    КонецПроцедуры
```

2. Далее необходимо установить условное оформление формы для таблицы. Можно настроить в свойствах формы, но как правило это делают программно, один раз, при создании формы на сервере:

```1c
    ЭлементУО = УсловноеОформление.Элементы.Добавить();
    ЭлементУО.УстановитьЗначениеПараметра("ЦветТекста", WebЦвета.Красный);

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

    ОтборЭлемента = ЭлементУО.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.Товары.Изменена");
    ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
    ОтборЭлемента.ПравоеЗначение = Истина;
```
---
не раскрашивает и всё тут
---
Значит что-то сделали не так, давайте разбираться. :) Что из предложенного мной Вы реализовали?
---
в (16) код :)
---
Во-первых, не указаны расскрашиваемые поля. Во-вторых, возможна ошибка в параметрах при вызове процедуры "ОформитьСтрокуНаСервере", хорошо бы этот вызов тоже показать.
---
ОформлениеСтроки.ЦветФона и дальше там или цвета ргб или вебцвета.