1С 8.3 Программная установка условного оформления поля динамического списка
Данные > Примеры кода 1С > 1С 8.3 Динамический список
Перейти в раздел примеры кода 1С 8.3:

Установить условное оформление для поля ДС в 1С 8.3:
//Вызывать процедуру из модуля формы "ПриОткрытии"
&НаКлиенте
Процедура УстановитьУсловноеОформлениеДляПоляДатаДоговора()
// Создание элемента условного оформления
ЭлементыОформления = СписокПартийДС.УсловноеОформление.Элементы.Добавить();
ЭлементыОформления.Использование = Истина;
// Настройка оформляемого поля
Поля = ЭлементыОформления.Поля.Элементы.Добавить();
Поля.Использование = Истина;
Поля.Поле = Новый ПолеКомпоновкиДанных("ДатаДог");
Поля = ЭлементыОформления.Поля.Элементы.Добавить();
Поля.Использование = Истина;
// Создание условия для элемента оформления
Отбор = ЭлементыОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
Отбор.Использование = Истина;
Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.Больше;
Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДатаДог");
Отбор.ПравоеЗначение = ТекущаяДата() + 31557600;
// Установка цвета оформления
Оформление = ЭлементыОформления.Оформление;
Оформление.УстановитьЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ЦветФона"), WebЦвета.ЛососьСветлый);
КонецПроцедуры
&НаКлиенте
Процедура УстановитьУсловноеОформлениеДляПоляДатаДоговора()
// Создание элемента условного оформления
ЭлементыОформления = СписокПартийДС.УсловноеОформление.Элементы.Добавить();
ЭлементыОформления.Использование = Истина;
// Настройка оформляемого поля
Поля = ЭлементыОформления.Поля.Элементы.Добавить();
Поля.Использование = Истина;
Поля.Поле = Новый ПолеКомпоновкиДанных("ДатаДог");
Поля = ЭлементыОформления.Поля.Элементы.Добавить();
Поля.Использование = Истина;
// Создание условия для элемента оформления
Отбор = ЭлементыОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
Отбор.Использование = Истина;
Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.Больше;
Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДатаДог");
Отбор.ПравоеЗначение = ТекущаяДата() + 31557600;
// Установка цвета оформления
Оформление = ЭлементыОформления.Оформление;
Оформление.УстановитьЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ЦветФона"), WebЦвета.ЛососьСветлый);
КонецПроцедуры
2
комментарии
Гений 1С
06 май 2025
Так как часто попадаю на эту статью из поиска, оставлю код для условного оформления табличной части в форме:
// Создание элемента условного оформления
ЭлементыОформления = ЭтаФорма.УсловноеОформление.Элементы.Добавить();
ЭлементыОформления.Использование = Истина;
// Настройка оформляемого поля
Поля = ЭлементыОформления.Поля.Элементы.Добавить();
Поля.Использование = Истина;
Поля.Поле = Новый ПолеКомпоновкиДанных("ЗаказыПоставщикам"); //Выделение всей строки ТЧ
Поля = ЭлементыОформления.Поля.Элементы.Добавить();
Поля.Использование = Истина;
// Создание условия для элемента оформления
Отбор = ЭлементыОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
Отбор.Использование = Истина;
Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.ЗаказыПоставщикам.дор_Выделенный");
Отбор.ПравоеЗначение = Истина;
// Установка цвета оформления
Оформление = ЭлементыОформления.Оформление;
Оформление.УстановитьЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ЦветФона"), Новый Цвет(195, 231, 255));//WebЦвета.АкварельноСиний);
// Создание элемента условного оформления
ЭлементыОформления = ЭтаФорма.УсловноеОформление.Элементы.Добавить();
ЭлементыОформления.Использование = Истина;
// Настройка оформляемого поля
Поля = ЭлементыОформления.Поля.Элементы.Добавить();
Поля.Использование = Истина;
Поля.Поле = Новый ПолеКомпоновкиДанных("ЗаказыПоставщикам"); //Выделение всей строки ТЧ
Поля = ЭлементыОформления.Поля.Элементы.Добавить();
Поля.Использование = Истина;
// Создание условия для элемента оформления
Отбор = ЭлементыОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
Отбор.Использование = Истина;
Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.ЗаказыПоставщикам.дор_Выделенный");
Отбор.ПравоеЗначение = Истина;
// Установка цвета оформления
Оформление = ЭлементыОформления.Оформление;
Оформление.УстановитьЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ЦветФона"), Новый Цвет(195, 231, 255));//WebЦвета.АкварельноСиний);
Дмитрий
28 мар 2024
Код рабочий, спасибо.
____________________
Перепечатка текста и фотографий разрешена при наличии прямой ссылки на источник