НЕ победил: раскраску дерева погоды, есть поле цвета температуры, но... У кого получится - поделитесь для общего развития.
Для БП 3.0
&НаСервере
Процедура ЗагрузитьПогоду()
ОбъектОбработка = РеквизитФормыВЗначение("Объект");
ДЗ = ОбъектОбработка.ЗагрузитьПогоду(Объект.idГорода);
Если ДЗ = Неопределено Тогда
Возврат;
КонецЕсли;
Если ДЗ.Строки.Количество() > 0 Тогда
ЗначениеВРеквизитФормы(ДЗ,"ДеревоПогоды");
// Добавлено \/
УсловноеОформление.Элементы.Очистить();
Для каждого СтрокаДня Из ДЗ.Строки Цикл
Для каждого СтрокаПогоды Из СтрокаДня.Строки Цикл
Если НЕ ПустаяСтрока(СтрокаПогоды.ЦветТемпературы) Тогда
ЭлементУО = УсловноеОформление.Элементы.Добавить();
КомпоновкаДанныхКлиентСервер.ДобавитьОформляемоеПоле(ЭлементУО.Поля, "ДеревоПогодыТемпература");
ОбщегоНазначенияКлиентСервер.ДобавитьЭлементКомпоновки(ЭлементУО.Отбор,
"ДеревоПогоды.ЦветТемпературы", ВидСравненияКомпоновкиДанных.Равно, СтрокаПогоды.ЦветТемпературы);
ЦветRGB = HexToDec(СтрокаПогоды.ЦветТемпературы);
R = ЦветRGB%256;
G = (Цел(ЦветRGB/256))%256;
B = (Цел(ЦветRGB/65536))%256;
ЭлементУО.Оформление.УстановитьЗначениеПараметра("ЦветФона", Новый Цвет(B,G,R));
КонецЕсли;
КонецЦикла;
КонецЦикла;
// Добавлено /\
КонецЕсли;
КонецПроцедуры
Показать