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