|
Не отрабатывает отбор в условном оформлении (программно) | ☑ | ||
---|---|---|---|---|
0
WhiteDragon93
06.07.18
✎
09:05
|
Всем привет, есть программно созданное условное оформление, не могу понять почему не отрабатывает отбор, красится при любых условиях.
П.С. Оставлял только отбор, где явно указывается дата, не помогло. ЭлементУО = ЭтаФорма.Список.УсловноеОформление.Элементы.Добавить(); ЭлементУО.Представление = "Раскраска по дате смены статуса"; ЭлементУО.ПредставлениеПользовательскойНастройки = "Раскраска по дате смены статуса"; ПолеОформления = ЭлементУО.Поля.Элементы.Добавить(); ПолеОформления.Поле = Новый ПолеКомпоновкиДанных("Статус"); ПолеОформления.Использование = Истина; ПолеОформления = ЭлементУО.Поля.Элементы.Добавить(); ПолеОформления.Поле = Новый ПолеКомпоновкиДанных("мтаОтветственныйЗаСменуСтатуса"); ПолеОформления.Использование = Истина; ПолеОформления = ЭлементУО.Поля.Элементы.Добавить(); ПолеОформления.Поле = Новый ПолеКомпоновкиДанных("Клиент"); ПолеОформления.Использование = Истина; ПолеОформления = ЭлементУО.Поля.Элементы.Добавить(); ПолеОформления.Поле = Новый ПолеКомпоновкиДанных("мтаПредполагаемаяДатаСменыСтатуса"); ПолеОформления.Использование = Истина; ПолеОформления = ЭлементУО.Поля.Элементы.Добавить(); ПолеОформления.Поле = Новый ПолеКомпоновкиДанных("ПотенциальнаяСуммаПродажи"); ПолеОформления.Использование = Истина; ПолеОформления = ЭлементУО.Поля.Элементы.Добавить(); ПолеОформления.Поле = Новый ПолеКомпоновкиДанных("ДатаНачала"); ПолеОформления.Использование = Истина; ГруппаУсловий = ЭлементУО.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных")); ГруппаУсловий.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ; ГруппаУсловий.Использование = Истина; ЭлементУсловия = ГруппаУсловий.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементУсловия.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("мтаПредполагаемаяДатаСменыСтатуса"); ЭлементУсловия.ВидСравнения = ВидСравненияКомпоновкиДанных.МеньшеИлиРавно; ЭлементУсловия.ПравоеЗначение = Формат(НачалоДня(ТекущаяДата()), "ДФ=dd.MM.yyyy"); ЭлементУсловия.Использование = Истина; ЭлементУсловия = ГруппаУсловий.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементУсловия.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Статус"); ЭлементУсловия.ВидСравнения = ВидСравненияКомпоновкиДанных.НеРавно; СписокСтатусов = Новый СписокЗначений; СписокСтатусов.Добавить(Перечисления.СтатусыСделок.Выиграна); СписокСтатусов.Добавить(Перечисления.СтатусыСделок.Проиграна); ЭлементУсловия.ПравоеЗначение = СписокСтатусов; ЭлементУсловия.Использование = Истина; ЭлементУО.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.СветлоКоралловый); |
|||
1
WhiteDragon93
06.07.18
✎
09:11
|
+(0) одну из ошибок сам нашел, во втором элементе отбора не правильное сравнение, но его пробовал комментить, не взлетело
|
|||
2
Тихий омут
06.07.18
✎
09:12
|
ЭлементУсловия.ПравоеЗначение = Формат(НачалоДня(ТекущаяДата()), "ДФ=dd.MM.yyyy");
ты зачем дату в строку преобразовываешь? |
|||
3
olegves
06.07.18
✎
09:14
|
МеньшеИлиРавно - пустая дата всегда меньше любой даты, поскольку равна 01.01.0001
|
|||
4
WhiteDragon93
06.07.18
✎
09:15
|
(2) это я уже метод "научного тыка" пытался применить, забыл откатить, без этого результат был тот же
|
|||
5
olegves
06.07.18
✎
09:16
|
для второго надо бы добавить:
СписокСтатусов.Добавить(Перечисления.СтатусыСделок.ПустаяСсылка); |
|||
6
WhiteDragon93
06.07.18
✎
09:18
|
(5) в целом, он пустым не бывает, но обезопаситься стоит, спасибо
|
|||
7
hhhh
06.07.18
✎
10:23
|
(6) вот это что-то совсем не в ту степь
ЭлементУсловия.ВидСравнения = ВидСравненияКомпоновкиДанных.НеРавно; то есть не равно списку ?? там нужно какой-то вид сравнения со списком: в списке, не в списке. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |