helpf.pro
Регистрация

v8: Условное оформление ТЧ обработки

Bell
19.12.2014 10:35Прочитано: 4521

YslovnoeOformlenie.epfЗдравствуйте

Имеентся обработка с ТЧ 

Артикул (Строка)Наименование (СтрокаАртикулСпр (Ссылка Номенклатура.Артикул)НаименованиеСпр ( Ссылка Номеклатура )Условия оформленияЕсли Ариткул НЕ РАВНО АтрикулСпр цвет желтыйЕсли Нименование НЕ РАВНО НаименованиеСпр цвет желтый

Yandex
Возможно, вас также заинтересует
Реклама на портале
E_Migachev
23.12.2014 23:43Ответ № 1

Программная работа с условным оформлением (УО).

Начнем с того, что работа с УО доступна только: &НаСервере

Для Добавления элемента УО в списке нужно обратится к списку и добавить элемент УО:

ЭлементОформления = Список.УсловноеОформление.Элементы.Добавить();

Для УО формы добавление происходит через прикладной объект УсловноеОформление:

ЭлементУсловногоОформления = УсловноеОформление.Элементы.Добавить();

Далее алгоритмы будут похожими. Для УО нам нужно задать условие отбора, задать значение свойства УО и добавить оформляемые поля.

Код 1C v 8.2 УП
 // Создаем условие отбора
ЭлементОтбора = ЭлементОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(ИмяПоля); // имя поля
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; // либо задаем свой
//**** Значение для отбора
ЭлементОтбора.ПравоеЗначение = ЗначениеДляОтбора;
// следует заметить что правым значением может выступать ПолеКомпоновкиДанных формы или списка
ЭлементОтбора.ПравоеЗначение = Новый ПолеКомпоновкиДанных(ИмяПоля);
//****

ЭлементОтбора.Использование = Истина;

Значение свойства УО:

Код 1C v 8.2 УП
 // Установка значения элемента УО
// Возможно обращение как по индексу так и установка через метод
//1.
Элемент = ЭлементОформления.Оформление.Элементы[0];
Элемент.Значение = Цвет;
//2.
ЭлементОформления.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.СеребристоСерый);
Элемент.Использование = Истина;

// Добавим поля оформления, если ничего не добавлять, то система применит оформления ко всей строке:
// Создаем поля оформления
ПолеОформления = ЭлементОформления.Поля.Элементы.Добавить();
ПолеОформления.Поле = Новый ПолеКомпоновкиДанных(ПолеДляОформления);
ПолеОформления.Использование = Истина;

В качестве ИменПолей нужно передавать строковое представление ИМЕНИ реквизита.

Подсказка: Для быстрого поиска ответов - используйте 'Поиск'
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.