![]() |
|
Не отрабатывает условное оформление програмно | ☑ | ||
---|---|---|---|---|
0
Sova112
13.06.16
✎
11:22
|
Доброго время дня,
написала УО для таблитчной части, процедура отрабатывает нормально. Процедура ОформитьСтрокиТЧ(Объект,УсловноеОформление,ТипОбъектаПодробный,ИмяТЧ) Экспорт ТипОбъектаСтр = СтрЗаменить(ТипОбъектаПодробный,".",Символы.ПС); ТипОбъектаКраткий = СтрПолучитьСтроку(ТипОбъектаСтр,1); ИмяОформляемогоМетаданного = СтрПолучитьСтроку(ТипОбъектаСтр,2); ТипОбъектаКраткий = "Документы"; ОбъектДанные = ДанныеФормыВЗначение(Объект,Тип(ТипОбъектаПодробный)); Для каждого СтрТЧ Из ОбъектДанные.Товары Цикл Если НЕ ЗначениеЗаполнено(СтрТЧ.Серия) Тогда Продолжить; КонецЕсли; Если СтрТЧ.Серия.ГоденДо = дата("00010101") Тогда Продолжить; КонецЕсли; Процент = НайтиЗначениеПроцента(); Если Процент = 0 Тогда Продолжить; КонецЕсли; КолДней =(НачалоДня(СтрТЧ.Серия.ГоденДо) -НачалоДня(ТекущаяДата()))/86400; ПроцентРезультат = 0; ПроцентРезультат = 100*КолДней/365; Если ПроцентРезультат <= Процент Тогда ОбъектСОформлением = СтрТЧ.НомерСтроки; ЦветФонаСтроки = WebЦвета.Красный; //ЦветШрифтаСтроки = WebЦвета.Красный; ЭлементУсловногоОформления = УсловноеОформление.Элементы.Добавить(); ЭлементУсловногоОформления.Использование = Истина; ОформлениеУО = ЭлементУсловногоОформления.Оформление; ОтборУО = ЭлементУсловногоОформления.Отбор; ОформляемыеПоляУО = ЭлементУсловногоОформления.Поля; ОформлениеУО.УстановитьЗначениеПараметра("ЦветФона", ЦветФонаСтроки); //ОформлениеУО.УстановитьЗначениеПараметра("ЦветТекста", ЦветШрифтаСтроки); //ОформлениеУО.УстановитьЗначениеПараметра("Шрифт", ШрифтСтроки); ЭлементОтбора = ОтборУО.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.НомерСтроки" ); ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; ЭлементОтбора.ПравоеЗначение = ОбъектСОформлением; ЭлементОтбора.Использование = Истина; Для каждого РеквизитТЧ Из Метаданные[ТипОбъектаКраткий][ИмяОформляемогоМетаданного].ТабличныеЧасти[ИмяТЧ].Реквизиты Цикл НазваниеРеквизита = РеквизитТЧ.Имя; ОформляемоеПоле = ОформляемыеПоляУО.Элементы.Добавить(); ОформляемоеПоле.Поле = Новый ПолеКомпоновкиДанных(ИмяТЧ + НазваниеРеквизита); КонецЦикла; ОформляемоеПоле = ОформляемыеПоляУО.Элементы.Добавить(); ОформляемоеПоле.Поле = Новый ПолеКомпоновкиДанных(ИмяТЧ + "НомерСтроки"); КонецЕсли; КонецЦикла; КонецПроцедуры |
|||
1
Sova112
13.06.16
✎
11:24
|
но цвет строк не меняется, добавила так же в процедуру УстановитьУсловноеОформление. Все равно не отрабатыает. Или на секунду становится красным, если делаю условное оформление через форму.
Подскажите что не так? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |