Добавляет элемент условного оформления по параметрам
// Добавляет элемент условного оформления по параметрам
// Источник: https://github.com/SeiOkami/CollectionMethodsOneS/issues/83
//
// Параметры:
// УсловноеОформление - УсловноеОформлениеКомпоновкиДанных - Коллекция условного оформления
// ОформляемыеПоля - Строка, Массив из Строка - Имена полей, на которых распространяется условное оформление
// УсловияОтбора - Структура, Массив из Структура - Условия отбора оформления.
// ПараметрыОформления - Структура - Параметры оформления
//
// Возвращаемое значение:
// ЭлементУсловногоОформленияКомпоновкиДанных - добавленный элемент
//
Функция НовыйЭлементУсловногоОформления(Знач УсловноеОформление,
Знач ОформляемыеПоля, Знач УсловияОтбора, Знач ПараметрыОформления) Экспорт
НовыйЭлемент = УсловноеОформление.Элементы.Добавить();
НовыйЭлемент.Использование = Истина;
Для Каждого КлючИЗначение Из ПараметрыОформления Цикл
НовыйЭлемент.Оформление.УстановитьЗначениеПараметра(КлючИЗначение.Ключ, КлючИЗначение.Значение);
КонецЦикла;
Если ТипЗнч(ОформляемыеПоля) = Тип("Строка") Тогда
КоллекцияДобавляемыхПолей = СтрРазделить(ОформляемыеПоля, ",");
Иначе
КоллекцияДобавляемыхПолей = ОформляемыеПоля;
КонецЕсли;
Для Каждого ДобавляемоеПоле Из КоллекцияДобавляемыхПолей Цикл
ОформляемоеПолеКомпоновкиДанных = НовыйЭлемент.Поля.Элементы.Добавить();
ОформляемоеПолеКомпоновкиДанных.Использование = Истина;
ОформляемоеПолеКомпоновкиДанных.Поле = Новый ПолеКомпоновкиДанных(ДобавляемоеПоле);
КонецЦикла;
Если ТипЗнч(УсловияОтбора) = Тип("Массив") Тогда
КоллекцияУсловий = УсловияОтбора;
Иначе
КоллекцияУсловий = Новый Массив(1);
КоллекцияУсловий[0] = УсловияОтбора;
КонецЕсли;
Для Каждого УсловиеОтбора Из КоллекцияУсловий Цикл
ЭлементОтбора = НовыйЭлемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЗаполнитьЗначенияСвойств(ЭлементОтбора, УсловиеОтбора);
КонецЦикла;
Возврат НовыйЭлемент;
КонецФункции
УстановитьУсловноеОформлениеДереваПодсистем (БСП)
СнятьУсловноеОформлениеСпискаЗначений (БСП)
ПредставлениеЭлементаУсловногоОформления (БСП)
ЗаполнитьУсловноеОформлениеСпискаФайлов (БСП)
ЗаполнитьУсловноеОформлениеСпискаПапок (БСП)
Программное добавление условного оформления документа