#Область ОбработчикиСобытийФормы
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
ИсключаемыеИменаПолейОтборов = "ВАрхиве";
ФизическиеЛицаЗарплатаКадры.ФормаВыбораСотрудниковПриСозданииНаСервере(ЭтотОбъект, Параметры);
ДатаНачалаОтбора = Неопределено;
ДатаОкончанияОтбора = Неопределено;
Если Параметры.Отбор.Свойство("ДатаПримененияОтбора") Тогда
Если ЗначениеЗаполнено(Параметры.Отбор.ДатаПримененияОтбора) Тогда
ДатаНачалаОтбора = НачалоДня(Параметры.Отбор.ДатаПримененияОтбора);
ДатаОкончанияОтбора = КонецДня(ДатаНачалаОтбора);
КонецЕсли;
Если НЕ ЗначениеЗаполнено(ДатаНачалаОтбора)
И НЕ Параметры.Отбор.Свойство("МесяцПримененияОтбора") Тогда
ДатаНачалаОтбора = НачалоДня(ТекущаяДатаСеанса());
ДатаОкончанияОтбора = КонецДня(ДатаНачалаОтбора);
КонецЕсли;
Если ЗначениеЗаполнено(ДатаНачалаОтбора) Тогда
ЗаголовокГруппы = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru='работающие %1'"),
Формат(ДатаНачалаОтбора, "ДЛФ=DD"));
КонецЕсли;
КонецЕсли;
Если НЕ ЗначениеЗаполнено(ДатаНачалаОтбора) И Параметры.Отбор.Свойство("МесяцПримененияОтбора") Тогда
Если ЗначениеЗаполнено(Параметры.Отбор.МесяцПримененияОтбора) Тогда
ДатаНачалаОтбора = НачалоМесяца(Параметры.Отбор.МесяцПримененияОтбора);
ДатаОкончанияОтбора = КонецМесяца(ДатаНачалаОтбора);
КонецЕсли;
Если НЕ ЗначениеЗаполнено(ДатаНачалаОтбора) Тогда
ДатаНачалаОтбора = НачалоМесяца(ТекущаяДатаСеанса());
ДатаОкончанияОтбора = КонецМесяца(ДатаНачалаОтбора);
КонецЕсли;
Если ЗначениеЗаполнено(ДатаНачалаОтбора) Тогда
ЗаголовокГруппы = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru='работающие в период - %1 г.'"),
Формат(ДатаНачалаОтбора, "ДФ='МММ гггг'"));
КонецЕсли;
КонецЕсли;
Если НЕ ЗначениеЗаполнено(ДатаНачалаОтбора)
И Параметры.Отбор.Свойство("НачалоПериодаПримененияОтбора")
И Параметры.Отбор.Свойство("ОкончаниеПериодаПримененияОтбора") Тогда
Если ЗначениеЗаполнено(Параметры.Отбор.НачалоПериодаПримененияОтбора)
И ЗначениеЗаполнено(Параметры.Отбор.ОкончаниеПериодаПримененияОтбора)
И Параметры.Отбор.НачалоПериодаПримененияОтбора <= Параметры.Отбор.ОкончаниеПериодаПримененияОтбора Тогда
ДатаНачалаОтбора = НачалоДня(Параметры.Отбор.НачалоПериодаПримененияОтбора);
ДатаОкончанияОтбора = КонецДня(Параметры.Отбор.ОкончаниеПериодаПримененияОтбора);
Если ДатаНачалаОтбора = НачалоГода(ДатаОкончанияОтбора)
И КонецГода(ДатаНачалаОтбора) = ДатаОкончанияОтбора Тогда
ЗаголовокГруппы = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru='работающие в %1 г.'"),
Формат(ДатаНачалаОтбора, "ДФ='гггг'"));
Иначе
ЗаголовокГруппы = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru='работающие в периоде с %1 по %2'"),
Формат(ДатаНачалаОтбора, "ДЛФ=DD"),
Формат(ДатаОкончанияОтбора, "ДЛФ=DD"));
КонецЕсли;
КонецЕсли;
КонецЕсли;
Параметры.Отбор.Удалить("ДатаПримененияОтбора");
Параметры.Отбор.Удалить("МесяцПримененияОтбора");
Параметры.Отбор.Удалить("НачалоПериодаПримененияОтбора");
Параметры.Отбор.Удалить("ОкончаниеПериодаПримененияОтбора");
Если ЗначениеЗаполнено(ДатаНачалаОтбора) Тогда
ГруппаИ = ОбщегоНазначенияКлиентСервер.СоздатьГруппуЭлементовОтбора(Список.КомпоновщикНастроек.Настройки.Отбор.Элементы,
НСтр("ru='Сотрудники'") + " " + ЗаголовокГруппы, ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ);
ГруппаИ.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.БыстрыйДоступ;
ГруппаИ.ИдентификаторПользовательскойНастройки = "РаботающиеСотрудники";
Если Параметры.Отбор.Свойство("ПринятыеЗаранее")
И Параметры.Отбор.ПринятыеЗаранее = Истина Тогда
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(
ГруппаИ, "ДатаПриема", НачалоДня(ДатаОкончанияОтбора), ВидСравненияКомпоновкиДанных.Меньше);
Иначе
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(
ГруппаИ, "ДатаПриема", ДатаОкончанияОтбора, ВидСравненияКомпоновкиДанных.МеньшеИлиРавно);
КонецЕсли;
ГруппаИЛИ = ОбщегоНазначенияКлиентСервер.СоздатьГруппуЭлементовОтбора(ГруппаИ.Элементы, "ГруппаИЛИ", ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли);
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(
ГруппаИЛИ, "ДатаУвольнения", ДатаНачалаОтбора, ВидСравненияКомпоновкиДанных.БольшеИлиРавно);
ГруппаИЛИДляДатаУвольнения = ОбщегоНазначенияКлиентСервер.СоздатьГруппуЭлементовОтбора(ГруппаИЛИ.Элементы, "ГруппаИЛИДляДатаУвольнения", ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли);
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(
ГруппаИЛИДляДатаУвольнения, "ДатаУвольнения", , ВидСравненияКомпоновкиДанных.НеЗаполнено);
ТекстЗапроса = Список.ТекстЗапроса;
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ОсновныеСотрудникиФизическихЛиц.ДатаНачала", "&ДатаНачалаОтбора");
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ОсновныеСотрудникиФизическихЛиц.ДатаОкончания", "&ДатаОкончанияОтбора");
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ДатаОкончанияОтбора = &МаксимальнаяДатаНачалоДня", "ОсновныеСотрудникиФизическихЛиц.ДатаОкончания = &МаксимальнаяДатаНачалоДня");
Список.ТекстЗапроса = ТекстЗапроса;
ОбщегоНазначенияКлиентСервер.УстановитьПараметрДинамическогоСписка(
Список, "ДатаНачалаОтбора", ДатаНачалаОтбора);
ОбщегоНазначенияКлиентСервер.УстановитьПараметрДинамическогоСписка(
Список, "ДатаОкончанияОтбора", ДатаОкончанияОтбора);
КонецЕсли;
Параметры.Отбор.Удалить("ПринятыеЗаранее");
Если ОбщегоНазначения.ПодсистемаСуществует("ЗарплатаКадрыКорпоративнаяПодсистемы.УправленческаяЗарплата") Тогда
Модуль = ОбщегоНазначения.ОбщийМодуль("УправленческаяЗарплатаФормы");
Модуль.УточнитьПараметрыФормыВыбораСотрудниковСправочникаФизическиеЛица(Список, Параметры, ДатаНачалаОтбора, ДатаОкончанияОтбора, ИсключаемыеИменаПолейОтборов);
КонецЕсли;
Если Параметры.Отбор.Свойство("Организация") Тогда
Если ЗначениеЗаполнено(Параметры.Отбор.Организация) Тогда
Параметры.Отбор.Вставить("Филиал", Параметры.Отбор.Организация);
КонецЕсли;
Параметры.Отбор.Удалить("Организация");
КонецЕсли;
Если Параметры.Отбор.Свойство("ГоловнаяОрганизация") Тогда
Если ЗначениеЗаполнено(Параметры.Отбор.ГоловнаяОрганизация) Тогда
Параметры.Отбор.Вставить("Организация", ЗарплатаКадры.ГоловнаяОрганизация(Параметры.Отбор.ГоловнаяОрганизация));
КонецЕсли;
Параметры.Отбор.Удалить("ГоловнаяОрганизация");
КонецЕсли;
Если Параметры.Отбор.Свойство("Филиал")
И ЗначениеЗаполнено(Параметры.Отбор.Филиал) Тогда
Если Не Параметры.Отбор.Свойство("Организация")
Или ЗначениеЗаполнено(Параметры.Отбор.Организация) Тогда
Если ТипЗнч(Параметры.Отбор.Филиал) = Тип("СписокЗначений") Тогда
Параметры.Отбор.Вставить("Организация", ЗарплатаКадры.ГоловнаяОрганизация(Параметры.Отбор.Филиал[0].Значение));
Иначе
Параметры.Отбор.Вставить("Организация", ЗарплатаКадры.ГоловнаяОрганизация(Параметры.Отбор.Филиал));
КонецЕсли;
КонецЕсли;
КонецЕсли;
Если (Не Параметры.Отбор.Свойство("Организация") Или Не ЗначениеЗаполнено(Параметры.Отбор.Организация))
И (Не Параметры.Отбор.Свойство("Филиал") Или Не ЗначениеЗаполнено(Параметры.Отбор.Филиал)) Тогда
Если ОбщегоНазначенияКлиентСервер.НайтиЭлементыИГруппыОтбора(Список.Отбор, "Ссылка").Количество() = 0 Тогда
ОбщегоНазначения.СообщитьПользователю(
НСтр("ru='Необходимо выбрать организацию'"), , , , Отказ);
Возврат;
КонецЕсли;
КонецЕсли;
Если Параметры.Отбор.Свойство("Организация") Тогда
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
Список, "Организация", Параметры.Отбор.Организация, , , Истина, РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный);
Параметры.Отбор.Удалить("Организация");
КонецЕсли;
Если Параметры.Отбор.Свойство("Филиал") Тогда
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
Список, "Филиал", Параметры.Отбор.Филиал, , , Истина, РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный);
Параметры.Отбор.Удалить("Филиал");
Если СтрНайти(ИсключаемыеИменаПолейОтборов, ",Организация,Филиал") = 0 Тогда
ИсключаемыеИменаПолейОтборов = ИсключаемыеИменаПолейОтборов + ",Организация";
КонецЕсли;
КонецЕсли;
Если Параметры.Отбор.Свойство("Подразделение") Тогда
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
Список, "Подразделение", Параметры.Отбор.Подразделение, , , Истина, РежимОтображенияЭлементаНастройкиКомпоновкиДанных.БыстрыйДоступ);
Параметры.Отбор.Удалить("Подразделение");
КонецЕсли;
Если Параметры.Отбор.Свойство("ВАрхиве") Тогда
Если Параметры.Отбор.ВАрхиве = Ложь Тогда
УстановитьОтборСотрудниковВАрхиве(ЭтотОбъект, Истина);
СкрыватьСотрудниковПоКоторымУжеНеВыполняютсяОперации = Истина;
КонецЕсли;
Параметры.Отбор.Удалить("ВАрхиве");
КонецЕсли;
Если Параметры.РежимВыбора И Параметры.ЗакрыватьПриВыборе = Ложь Тогда
Элементы.Список.МножественныйВыбор = Истина;
Элементы.Список.РежимВыделения = РежимВыделенияТаблицы.Множественный;
КонецЕсли;
Если Элементы.Список.РежимВыбора И Не ЗакрыватьПриВыборе Тогда
Если НЕ ПустаяСтрока(Параметры.АдресСпискаПодобранныхСотрудников) Тогда
МассивПодобранных = ПолучитьИзВременногоХранилища(Параметры.АдресСпискаПодобранныхСотрудников);
СписокПодобранных.ЗагрузитьЗначения(МассивПодобранных);
КонецЕсли;
КонецЕсли;
УстановитьСписокПодобранныхСотрудников();
ЗарплатаКадры.ПриСозданииНаСервереФормыСДинамическимСписком(ЭтотОбъект, "Список", , , , ИсключаемыеИменаПолейОтборов, Ложь);
КонецПроцедуры
&НаКлиенте
Процедура ПриЗакрытии(ЗавершениеРаботы)
Если ЗавершениеРаботы Тогда
Возврат;
КонецЕсли;
Если ВыбранныеФизическиеЛица.Количество() > 0 Тогда
ОповеститьОВыборе(ВыбранныеФизическиеЛица.ВыгрузитьЗначения());
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиСобытийЭлементовШапкиФормы
&НаКлиенте
Процедура СкрыватьСотрудниковПоКоторымУжеНеВыполняютсяОперацииПриИзменении(Элемент)
УстановитьОтборСотрудниковВАрхиве(ЭтотОбъект, СкрыватьСотрудниковПоКоторымУжеНеВыполняютсяОперации);
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ПолеФлажкаПриИзменении(Элемент)
ПриИзмененииОтбора(ЭтотОбъект);
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиСобытийЭлементовТаблицыФормыСписок
&НаКлиенте
Процедура СписокВыборЗначения(Элемент, Значение, СтандартнаяОбработка)
Если Элементы.Список.РежимВыбора Тогда
СтандартнаяОбработка = Ложь;
Если ТипЗнч(Значение) = Тип("Массив") Тогда
СписокЗначений = Значение;
Иначе
СписокЗначений = ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(Значение);
КонецЕсли;
Если СписокЗначений.Количество() > 0 Тогда
Если Элементы.Список.МножественныйВыбор Тогда
ОбновитьСписокПодобранных(СписокЗначений);
Если СписокЗначений.Количество() > 1 Тогда
Закрыть();
КонецЕсли;
Иначе
Если СписокПодобранных.НайтиПоЗначению(СписокЗначений[0]) = Неопределено Тогда
ОповеститьОВыборе(СписокЗначений[0]);
Иначе
Закрыть();
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура СписокПередЗагрузкойПользовательскихНастроекНаСервере(Элемент, Настройки)
ЗарплатаКадры.ПроверитьПользовательскиеНастройкиДинамическогоСписка(ЭтотОбъект, Настройки);
КонецПроцедуры
&НаСервере
Процедура СписокПриОбновленииСоставаПользовательскихНастроекНаСервере(СтандартнаяОбработка)
ЗарплатаКадры.ПроверитьПользовательскиеНастройкиДинамическогоСписка(ЭтотОбъект, , СтандартнаяОбработка);
Если СтандартнаяОбработка Тогда
СтандартнаяОбработка = Ложь;
Элементы.Список.СоздатьЭлементыФормыПользовательскихНастроек();
ПриИзмененииОтбора(ЭтотОбъект);
КонецЕсли;
УстановитьПоложениеЗаголовкаФлажковЭлементовГруппы(Элементы.СписокКомпоновщикНастроекПользовательскиеНастройки);
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиКомандФормы
&НаКлиенте
Процедура ВыбратьИзПолногоСпискаФизическихЛиц(Команда)
ВыбратьИзПолногоСпискаФизическихЛицНаСервере();
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
&НаСервере
Процедура ОбновитьСписокПодобранных(Значение)
Если ТипЗнч(Значение) = Тип("Массив") Тогда
СписокЗначений = Значение;
Иначе
СписокЗначений = ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(Значение);
КонецЕсли;
Для каждого ВыбранноеЗначение Из СписокЗначений Цикл
Если СписокПодобранных.НайтиПоЗначению(ВыбранноеЗначение) = Неопределено Тогда
СписокПодобранных.Добавить(ВыбранноеЗначение);
ВыбранныеФизическиеЛица.Добавить(ВыбранноеЗначение);
КонецЕсли;
КонецЦикла;
УстановитьСписокПодобранныхСотрудников();
КонецПроцедуры
&НаСервере
Процедура УстановитьСписокПодобранныхСотрудников()
ЭлементУсловногоОформления = Неопределено;
Для каждого ЭлементОформления Из УсловноеОформление.Элементы Цикл
Если ЭлементОформления.Представление = НСтр("ru='Выделение подобранных'") Тогда
ЭлементУсловногоОформления = ЭлементОформления;
Прервать;
КонецЕсли;
КонецЦикла;
Если ЭлементУсловногоОформления <> Неопределено Тогда
ЭлементУсловногоОформления.Отбор.Элементы[0].ПравоеЗначение = СписокПодобранных;
КонецЕсли;
КонецПроцедуры
&НаКлиентеНаСервереБезКонтекста
Процедура УстановитьОтборСотрудниковВАрхиве(Форма, Использование)
Если Использование Тогда
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
Форма.Список, "ВАрхиве", Ложь);
Иначе
ОбщегоНазначенияКлиентСервер.УдалитьЭлементыГруппыОтбораДинамическогоСписка(
Форма.Список, "ВАрхиве");
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура УстановитьПоложениеЗаголовкаФлажковЭлементовГруппы(ГруппаЭлементов)
Для каждого ЭлементГруппы Из ГруппаЭлементов.ПодчиненныеЭлементы Цикл
Если ТипЗнч(ЭлементГруппы) = Тип("ПолеФормы")
И ЭлементГруппы.Вид = ВидПоляФормы.ПолеФлажка Тогда
ЭлементГруппы.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Право;
ЭлементГруппы.УстановитьДействие("ПриИзменении", "Подключаемый_ПолеФлажкаПриИзменении");
ИначеЕсли ТипЗнч(ЭлементГруппы) = Тип("ГруппаФормы") Тогда
УстановитьПоложениеЗаголовкаФлажковЭлементовГруппы(ЭлементГруппы);
КонецЕсли;
КонецЦикла;
КонецПроцедуры
&НаКлиентеНаСервереБезКонтекста
Процедура ПриИзмененииОтбора(УправляемаяФорма)
ОтборПоФилиалу = Неопределено;
ИспользоватьОтбор = Неопределено;
Для Каждого ЭлементОбора Из УправляемаяФорма.Список.Отбор.Элементы Цикл
Если ТипЗнч(ЭлементОбора) = Тип("ЭлементОтбораКомпоновкиДанных") Тогда
Если ЭлементОбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Филиал") Тогда
ОтборПоФилиалу = ЭлементОбора;
КонецЕсли;
ИначеЕсли ТипЗнч(ЭлементОбора) = Тип("ГруппаЭлементовОтбораКомпоновкиДанных") Тогда
ИспользоватьОтбор = ЭлементОбора.Использование;
КонецЕсли;
Если ОтборПоФилиалу <> Неопределено И ИспользоватьОтбор <> Неопределено Тогда
Если ОтборПоФилиалу.Использование <> ИспользоватьОтбор Тогда
ОтборПоФилиалу.Использование = ИспользоватьОтбор;
ОбщегоНазначенияКлиентСервер.УстановитьПараметрДинамическогоСписка(
УправляемаяФорма.Список, "ОтбиратьПоФилиалу", ИспользоватьОтбор, Истина);
КонецЕсли;
Прервать;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
&НаСервере
Процедура ВыбратьИзПолногоСпискаФизическихЛицНаСервере()
Заголовок = НСтр("ru = 'Физические лица'");
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(
Элементы,
"СписокКомпоновщикНастроекПользовательскиеНастройки",
"Видимость",
Ложь);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(
Элементы,
"СписокНастройкиОтбора",
"Видимость",
Ложь);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(
Элементы,
"ФормаВыбратьИзПолногоСпискаФизическихЛиц",
"Видимость",
Ложь);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(
Элементы,
"СкрыватьСотрудниковПоКоторымУжеНеВыполняютсяОперации",
"Видимость",
Ложь);
ОтключитьЭлементыНастроек(Список.КомпоновщикНастроек.Настройки.Отбор.Элементы);
ОтключитьЭлементыНастроек(Список.КомпоновщикНастроек.ФиксированныеНастройки.Отбор.Элементы);
ОтключитьЭлементыНастроек(Список.КомпоновщикНастроек.ПользовательскиеНастройки.Элементы);
Список.ТекстЗапроса =
"ВЫБРАТЬ
| СправочникФизическиеЛица.Ссылка КАК Ссылка,
| СправочникФизическиеЛица.ПометкаУдаления КАК ПометкаУдаления,
| СправочникФизическиеЛица.Предопределенный КАК Предопределенный,
| СправочникФизическиеЛица.Родитель КАК Родитель,
| СправочникФизическиеЛица.ЭтоГруппа КАК ЭтоГруппа,
| СправочникФизическиеЛица.Код КАК Код,
| СправочникФизическиеЛица.Наименование КАК Наименование,
| СправочникФизическиеЛица.ДатаРождения КАК ДатаРождения,
| СправочникФизическиеЛица.ИНН КАК ИНН,
| СправочникФизическиеЛица.СтраховойНомерПФР КАК СтраховойНомерПФР
|ИЗ
| Справочник.ФизическиеЛица КАК СправочникФизическиеЛица
|ГДЕ
| НЕ СправочникФизическиеЛица.ЭтоГруппа";
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(
Элементы,
"Код",
"Видимость",
Истина);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(
Элементы,
"ИНН",
"Видимость",
Истина);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(
Элементы,
"СтраховойНомерПФР",
"Видимость",
Истина);
КонецПроцедуры
&НаСервере
Процедура ОтключитьЭлементыНастроек(КоллекцияЭлементов)
Для Каждого ЭлементНастроек Из КоллекцияЭлементов Цикл
Если ТипЗнч(ЭлементНастроек) = Тип("ЭлементОтбораКомпоновкиДанных")
Или ТипЗнч(ЭлементНастроек) = Тип("ГруппаЭлементовОтбораКомпоновкиДанных") Тогда
ЭлементНастроек.Использование = Ложь;
ИначеЕсли ТипЗнч(ЭлементНастроек) = Тип("КоллекцияЭлементовОтбораКомпоновкиДанных") Тогда
ОтключитьЭлементыНастроек(ЭлементНастроек.Элементы)
КонецЕсли;
КонецЦикла;
КонецПроцедуры
#КонецОбласти