Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Условное оформление в расширении срабатывает не по условию

Условное оформление в расширении срабатывает не по условию
Я
   Обработка
 
29.05.21 - 17:14
Форма обработки, в нем таблица.
Хочу перекрашивать фон двух ячеек строки по условию.

Добавил форму в расширение
Добавил функцию в расширение.
Добавил свое условное оформление.
Но почему-то срабатывает все время не соблюдая условие отбора.

&НаСервере
&После("УстановитьУсловноеОформление")
Процедура ДорФ_УстановитьУсловноеОформление()
    
    Элемент = УсловноеОформление.Элементы.Добавить();
    ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
    ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ОстаткиСерийТекущиеНомер.Имя);
    ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ОстаткиСерийТекущиеГоденДо");
    ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.МеньшеИлиРавно;
    ОтборЭлемента.ПравоеЗначение = Параметры.Дата;
    Элемент.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.Красный);
    //
    Элемент = УсловноеОформление.Элементы.Добавить();
    ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
    ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ОстаткиСерийТекущиеГоденДо.Имя);
    ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ОстаткиСерийТекущиеГоденДо");
    ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.МеньшеИлиРавно;
    ОтборЭлемента.ПравоеЗначение = Параметры.Дата;
    Элемент.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.Красный);

КонецПроцедуры
 
 Партнерская программа EFSOL Oblako
   PR
 
1 - 29.05.21 - 17:46
А ОтборЭлемента.Использование = Истина; где?
   Обработка
 
2 - 29.05.21 - 17:52
(1) Там в коде у других настроек в типовой не было этой команды я и не стал этого делать.
   Обработка
 
3 - 29.05.21 - 17:54
(2) Прописал. Все равно у меня красный цвет не смотря на то что дата = 01.01.2022 0:00:00
или даже 01.03.2023 0:00:00
   hhhh
 
4 - 29.05.21 - 19:42
(3) так у тебя же и написано WebЦвета.Красный. И у тебя красный. В чем прикол?
   Обработка
 
5 - 30.05.21 - 07:56
(4) У меня пр и условии что срок годности просрочен должен быть красным. А не все время.
   hhhh
 
6 - 30.05.21 - 08:00
(5) срок годности просрочен это должно быть больше или равно.
   hhhh
 
7 - 30.05.21 - 08:03
(6) а нет, запутался.
   Обработка
 
8 - 30.05.21 - 08:19
У меня Параметры.Дата = 29.05.2021 а ОстаткиСерийТекущиеГоденДо = 01.01.2022
и при этом ячейки закрашиваются красным.
   Обработка
 
9 - 31.05.21 - 09:12
Так в чем проблема кто может подсказать?
   DrZombi
 
10 - 31.05.21 - 09:15
(0) Очистить прошлое оформление не забыл?
   DrZombi
 
11 - 31.05.21 - 09:16
+ Мало ли кто там что понаотлаживал :)
   seevkik
 
12 - 31.05.21 - 09:27
Зачем два раза дублировать?
Зачем "ПолеЭлемента"?
Может лучше добавить условное оформление к списку, типа  "Элемент = ОстаткиСерий.УсловноеОформление.Элементы.Добавить()"?
Ну и главное - "Параметры.Дата" когда устанавливается? Практически уверен, что позже
Точку остановы на эту строчку надо "ОтборЭлемента.ПравоеЗначение = Параметры.Дата;"

Ну и кэш продуть если ничего не помогло
   Обработка
 
13 - 01.06.21 - 12:22
Проблема до сих пор не решена.
Все перепробовал.
   Обработка
 
14 - 01.06.21 - 20:20
Решил проблему. Подсказали. Кому интересно озвучу.
Надо писать так:
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ОстаткиСерийТекущие.ГоденДо"); 

то есть вместо "ОстаткиСерийТекущиеГоденДо"  надо "ОстаткиСерийТекущие.ГоденДо"

Список тем форума
 
Прочитай, хотя бы, Митичкина "Разработка в системе 1С:Предприятие 8". Волшебник
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.