Здравствуйте. Есть код:
Если условие выполняется, то мне нужно чтобы фон ячейки (поля) табличной части стала красной. Все реквизиты добавлены программно. Не получается, код успешно завершается, но ТЧ без раскраски, что может быть еще или какие еще есть варианты?
Для Каждого Элем Из Резолт Цикл
Если Элем.ЗаписьПосещения = "-" Или Элем.ЗаписьПосещения = "" Тогда
//Имячко = "_" + СтрЗаменить(Элем.Дата,"-","_");
//НСтр[Имячко] = "В";
Иначе
ВремяСтрФакт = Элем.ФактическоеВремяПрихода;
Части = СтрРазделить(ВремяСтрФакт, ":");
Время = Дата(1, 1, 1, Части[0], Части[1], 00);
Если Время > Результат[0].Условие1_ПриходНеПозже Тогда
ЭлементУО = УсловноеОформление.Элементы.Добавить();
ОформляемоеПоле = ЭлементУО.Поля.Элементы.Добавить();
ОформляемоеПоле.Поле = Новый ПолеКомпоновкиДанных("Колонка_" + СтрЗаменить(Элем.Дата,"-","_"));
ОформляемоеПоле.Использование = Истина;
ЭлементУО.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.Красный);
Имячко = "_" + СтрЗаменить(Элем.Дата,"-","_");
НСтр[Имячко] = 8;
КонецЕсли;
КонецЕсли;
КонецЦикла;
ПоказатьЕсли условие выполняется, то мне нужно чтобы фон ячейки (поля) табличной части стала красной. Все реквизиты добавлены программно. Не получается, код успешно завершается, но ТЧ без раскраски, что может быть еще или какие еще есть варианты?
По теме из базы знаний
- Пометка тестовой копии рабочей базы через механизм оповещений и раскрашивание форм (Управляемое приложение)
- Применение 1С:Аналитики и Дата акселератора, или Как получить в 1С прозрачность и скорость обработки данных для прямого доступа и контроля руководителя
- Инструменты конфигурирования и доработки "Склада 15" под свои задачи
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(8)Так у меня все условия в коде прописаны, сравнить не с чем.
Например:
При изменении значения пользователем, фон ячейки должен стать желтым.
Например:
&НаКлиенте
Процедура ВыполнитьДействиеПриИзмененииДанных(Элемент)
ТекДанные = Элементы.Таб.ТекущиеДанные;
Итог = 0;
Для Каждого Река ИЗ ДобавленныеПоля Цикл
Итог = Итог + ТекДанные[Река.РеквизитПоля];
КонецЦикла;
ТекДанные.Итого = Итог;
УО(Элемент.Имя);
//ЦветПоляТаблицыЗ = Новый Цвет (255,255,0);
////Элемент.ЦветФона = ЦветПоляТаблицыЗ;
//Элементы.Таб.сотрудник.ЦветФона = ЦветПоляТаблицыЗ;
КонецПроцедуры
ПоказатьПри изменении значения пользователем, фон ячейки должен стать желтым.
(14) Спасибо. Получилось в коде основном, а при изменении не могу добиться, все равно полностью вся колонка перекрашивается.
УО(Итог, Итог,Элемент.Имя, 3);
Процедура УО(Пар1, Пар2, Имя, Вид)
Если Вид = 1 Тогда
ЭлементОформленияГолубой = УсловноеОформление.Элементы.Добавить();
ЭлементОформленияГолубой.Использование = Истина;
ЭлементОформленияГолубой.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.Красный);
ЭлементУсловияГолубой = ЭлементОформленияГолубой.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементУсловияГолубой.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Таб.Итого");
ЭлементУсловияГолубой.ПравоеЗначение = 0;//Новый ПолеКомпоновкиДанных("Таб.Условие1");
ЭлементУсловияГолубой.ВидСравнения = ВидСравненияКомпоновкиДанных.Больше;
ЭлементУсловияГолубой.Использование = Истина;
ОформляемоеПоле = ЭлементОформленияГолубой.Поля.Элементы.Добавить();
ОформляемоеПоле.Поле = Новый ПолеКомпоновкиДанных(Имя);
ИначеЕсли Вид = 2 Тогда
ЭлементОформленияГолубой = УсловноеОформление.Элементы.Добавить();
ЭлементОформленияГолубой.Использование = Истина;
ЭлементОформленияГолубой.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.БледноЗеленый);
ЭлементУсловияГолубой = ЭлементОформленияГолубой.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементУсловияГолубой.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Таб.Итого");
ЭлементУсловияГолубой.ПравоеЗначение = 0;//Новый ПолеКомпоновкиДанных("Таб.Условие2");
ЭлементУсловияГолубой.ВидСравнения = ВидСравненияКомпоновкиДанных.Больше;
ЭлементУсловияГолубой.Использование = Истина;
ОформляемоеПоле = ЭлементОформленияГолубой.Поля.Элементы.Добавить();
ОформляемоеПоле.Поле = Новый ПолеКомпоновкиДанных(Имя);
ИначеЕсли Вид = 3 Тогда
ЭлементОформленияГолубой = УсловноеОформление.Элементы.Добавить();
ЭлементОформленияГолубой.Использование = Истина;
ЭлементОформленияГолубой.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.Желтый);
ЭлементУсловияГолубой = ЭлементОформленияГолубой.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементУсловияГолубой.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Таб.Итого");
ЭлементУсловияГолубой.ПравоеЗначение = 0;//Новый ПолеКомпоновкиДанных("Таб.Условие3");
ЭлементУсловияГолубой.ВидСравнения = ВидСравненияКомпоновкиДанных.Больше;
ЭлементУсловияГолубой.Использование = Истина;
ОформляемоеПоле = ЭлементОформленияГолубой.Поля.Элементы.Добавить();
ОформляемоеПоле.Поле = Новый ПолеКомпоновкиДанных(Имя);
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот