![]() |
|
Условное оформление ТЗ на форме | ☑ | ||
---|---|---|---|---|
0
Gera1t
18.08.23
✎
09:23
|
Здравствуйте!
Управляемая форма. Есть ТЗ как реквизит обработки. Разместил ее на форме. Заполняю ТЗ программно, вот код: УсловноеОформление.Элементы.Очистить(); //ЭлементУсловноеОформление = Форма.УсловноеОформление.Элементы.Добавить(); ЭлементУсловноеОформление = ЭтотОбъект.УсловноеОформление.Элементы.Добавить(); //делаем условие ЭлементОтбора = ЭлементУсловноеОформление.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("МатериалыСводноТребуетсяОбеспечить"); ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Меньше; ЭлементОтбора.ПравоеЗначение = 0; ЭлементОтбора.Использование = Истина; //делаем поля Элемент = ЭлементУсловноеОформление.Поля.Элементы.Добавить(); Элемент.Поле = Новый ПолеКомпоновкиДанных(ИмяТаблицы + "НомерСтроки"); //Элемент.Поле = Новый ПолеКомпоновкиДанных("НомерСтроки"); Элемент.Использование = Истина; Элемент = ЭлементУсловноеОформление.Поля.Элементы.Добавить(); Элемент.Поле = Новый ПолеКомпоновкиДанных(ИмяТаблицы + "Номенклатура"); Элемент.Использование = Истина; Элемент = ЭлементУсловноеОформление.Поля.Элементы.Добавить(); Элемент.Поле = Новый ПолеКомпоновкиДанных(ИмяТаблицы + "ЕдиницаИзмерения"); Элемент.Использование = Истина; Элемент = ЭлементУсловноеОформление.Поля.Элементы.Добавить(); Элемент.Поле = Новый ПолеКомпоновкиДанных(ИмяТаблицы + "КоличествоСостава"); Элемент.Использование = Истина; Элемент = ЭлементУсловноеОформление.Поля.Элементы.Добавить(); Элемент.Поле = Новый ПолеКомпоновкиДанных(ИмяТаблицы + "ТекущийОстаток"); Элемент.Использование = Истина; Элемент = ЭлементУсловноеОформление.Поля.Элементы.Добавить(); Элемент.Поле = Новый ПолеКомпоновкиДанных(ИмяТаблицы + "ТребуетсяОбеспечить"); Элемент.Использование = Истина; //делаем оформление ЭлементОформления = ЭлементУсловноеОформление.Оформление.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ЦветТекста")); Если ЭлементОформления <> Неопределено Тогда ЭлементОформления.Значение = Новый Цвет(255, 0, 0); ЭлементОформления.Использование = Истина; КонецЕсли; Условие такое, что если колонка ТЗ МатериалыСводноТребуетсяОбеспечить меньше 0, должно выделять красным. Но выделяет все красным, не пойму в чем дело. |
|||
1
Волшебник
18.08.23
✎
09:38
|
Чёрный тоже надо присваивать
|
|||
2
Gera1t
18.08.23
✎
09:43
|
(1) Т.е. добавить новое условие если больше или равно 0, то цвет текста черный?
|
|||
3
Gera1t
18.08.23
✎
10:16
|
Дело было вот здесь:
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("МатериалыСводноТребуетсяОбеспечить"); Так как это реквизит объекта нужно было писать вот так: ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.МатериалыСводно.ТребуетсяОбеспечить"); |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |