Вход | Регистрация

1С:Предприятие ::

Метки: 

Не отрабатывает отбор в условном оформлении (программно)

Я
   WhiteDragon93
 
06.07.18 - 09:05
Всем привет, есть программно созданное условное оформление, не могу понять почему не отрабатывает отбор, красится при любых условиях.

П.С. Оставлял только отбор, где явно указывается дата, не помогло.

ЭлементУО = ЭтаФорма.Список.УсловноеОформление.Элементы.Добавить();
    ЭлементУО.Представление = "Раскраска по дате смены статуса";
    ЭлементУО.ПредставлениеПользовательскойНастройки = "Раскраска по дате смены статуса";
    
    ПолеОформления      = ЭлементУО.Поля.Элементы.Добавить();
    ПолеОформления.Поле = Новый ПолеКомпоновкиДанных("Статус");
    ПолеОформления.Использование = Истина;
    
    ПолеОформления      = ЭлементУО.Поля.Элементы.Добавить();
    ПолеОформления.Поле = Новый ПолеКомпоновкиДанных("мтаОтветственныйЗаСменуСтатуса");
    ПолеОформления.Использование = Истина;
    
    ПолеОформления      = ЭлементУО.Поля.Элементы.Добавить();
    ПолеОформления.Поле = Новый ПолеКомпоновкиДанных("Клиент");
    ПолеОформления.Использование = Истина;
    
    ПолеОформления      = ЭлементУО.Поля.Элементы.Добавить();
    ПолеОформления.Поле = Новый ПолеКомпоновкиДанных("мтаПредполагаемаяДатаСменыСтатуса");
    ПолеОформления.Использование = Истина;
    
    ПолеОформления      = ЭлементУО.Поля.Элементы.Добавить();
    ПолеОформления.Поле = Новый ПолеКомпоновкиДанных("ПотенциальнаяСуммаПродажи");
    ПолеОформления.Использование = Истина;

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

    ЭлементУО.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.СветлоКоралловый);
 
 
   WhiteDragon93
 
1 - 06.07.18 - 09:11
+(0) одну из ошибок сам нашел, во втором элементе отбора не правильное сравнение, но его пробовал комментить, не взлетело
   Тихий омут
 
2 - 06.07.18 - 09:12
ЭлементУсловия.ПравоеЗначение = Формат(НачалоДня(ТекущаяДата()), "ДФ=dd.MM.yyyy");

ты зачем дату в строку преобразовываешь?
   olegves
 
3 - 06.07.18 - 09:14
МеньшеИлиРавно - пустая дата всегда меньше любой даты, поскольку равна 01.01.0001
   WhiteDragon93
 
4 - 06.07.18 - 09:15
(2) это я уже метод "научного тыка" пытался применить, забыл откатить, без этого результат был тот же
   olegves
 
5 - 06.07.18 - 09:16
для второго надо бы добавить:
    СписокСтатусов.Добавить(Перечисления.СтатусыСделок.ПустаяСсылка);
   WhiteDragon93
 
6 - 06.07.18 - 09:18
(5) в целом, он пустым не бывает, но обезопаситься стоит, спасибо
   hhhh
 
7 - 06.07.18 - 10:23
(6) вот это что-то совсем не в ту степь
  ЭлементУсловия.ВидСравнения = ВидСравненияКомпоновкиДанных.НеРавно;

то есть не равно списку  ??

там нужно какой-то вид сравнения со списком: в списке, не в списке.


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