|
СКД. Программное создание условного оформления | ☑ | ||
---|---|---|---|---|
0
nemoxp
15.09.16
✎
12:20
|
Для отчета на СКД нужно создать программно условное оформление. Источник данных для отчета - запрос. Написал такой код в обработчике при открытии:
ЭлементОформления = КомпоновщикНастроек.Настройки.Структура[0].УсловноеОформление.Элементы.Добавить(); ЭлементОформления.Использование = Истина; ЭлементОтбора = ЭлементОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбора.Использование = Истина; ЭлементОтбора.ЛевоеЗначение = КомпоновщикНастроек.Настройки.Структура[0].УсловноеОформление.ДоступныеПоляПолей.Элементы.Найти("Номенклатура").Элементы.Найти("Номенклатура.СтатусТовара").Поле; ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; ЭлементОтбора.ПравоеЗначение = Справочники.ПланированиеЗаказов.НайтиПоКоду("000000002"); ЭлементОформления.Оформление.УстановитьЗначениеПараметра("ЦветФона", Новый Цвет(255, 126, 126)); Открываю настройки отчета, на закладке Условное Оформление пусто. Настроить через интерфейс СКД не устраивает тем, что функционал урезан. Ошибок не выдает. Кто знает - помогите плз! |
|||
1
nemoxp
15.09.16
✎
12:21
|
платформа 8.2
|
|||
2
nemoxp
15.09.16
✎
13:02
|
Вот так работает:
ЭлементОформления = КомпоновщикНастроек.Настройки.УсловноеОформление.Элементы.Добавить(); ЭлементОформления.Использование = Истина; ЭлементОтбора = ЭлементОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбора.Использование = Истина; ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Номенклатура.СтатусТовара"); ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; ЭлементОтбора.ПравоеЗначение = Справочники.ПланированиеЗаказов.НайтиПоКоду("000000002"); ЭлементОформления.Оформление.УстановитьЗначениеПараметра("ЦветФона", Новый Цвет(255, 126, 126)); Так то. Пользуйтесь, неучи. |
|||
3
nemoxp
15.09.16
✎
13:24
|
Кто знает, как в правое значение загрузить список номенклатуры с видом сравнения "в списке"?
|
|||
4
Nuobu
15.09.16
✎
13:25
|
(3) Как неуч неучу отвечу тебе: поменять видСравниения.
|
|||
5
nemoxp
15.09.16
✎
13:29
|
Пишу "в списке". Создаю новый список значений. А в предприятии список пустой, если его открыть. Везде пустое значение
|
|||
6
nemoxp
15.09.16
✎
13:32
|
СписокНоменклатуры = новый списокзначений;
Пока Выборка.Следующий() цикл СписокНоменклатуры.Добавить(Выборка.Номенклатура); КонецЦикла; ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке; ЭлементОтбора.ПравоеЗначение = СписокНоменклатуры; В предприятии открываю этот список и везде "пустое значение". Что не так? |
|||
7
nemoxp
15.09.16
✎
13:33
|
Все ок. Вопрос снят. Не то поле установил для отбора.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |