Процедура ПриОткрытии()
	ирКлиент.Форма_ПриОткрытииЛкс(ЭтаФорма);
	#Если Сервер И Не Сервер Тогда
		ПриПолученииДанныхДоступныхПолей();
		ТабличноеПолеПриАктивизацииСтроки();
		ТабличноеПолеПриИзмененииФлажка();
	#КонецЕсли
	ирКлиент.ПодключитьОбработчикиСобытийДоступныхПолейКомпоновкиЛкс(ЭлементыФормы.ДоступныеПоляОтбора);
	#Если Сервер И Не Сервер Тогда
		ПолеКомпоновкиОкончаниеВводаТекста();
		ПолеКомпоновкиАвтоПодборТекста();
		ОтборЗначениеНачалоВыбора();
	#КонецЕсли
	ирКлиент.ПодключитьОбработчикиСобытийНастроекКомпоновкиЛкс(ЭлементыФормы.Отбор);
	Если Схема = Неопределено Тогда
		Схема = Новый СхемаКомпоновкиДанных;
	КонецЕсли;
	КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(Схема));
	Если ОтборПараметр <> Неопределено Тогда
		КомпоновщикНастроек.ЗагрузитьНастройки(ОтборПараметр);
	КонецЕсли;
КонецПроцедуры

Процедура ПриЗакрытии()
	ирКлиент.Форма_ПриЗакрытииЛкс(ЭтаФорма);
КонецПроцедуры

Процедура ВнешнееСобытие(Источник, Событие, Данные) Экспорт
	
	ирКлиент.Форма_ВнешнееСобытиеЛкс(ЭтаФорма, Источник, Событие, Данные);

КонецПроцедуры

Процедура ТабличноеПолеПриПолученииДанных(Элемент, ОформленияСтрок) Экспорт 
	
	ирКлиент.ТабличноеПолеПриПолученииДанныхЛкс(ЭтаФорма, Элемент, ОформленияСтрок);

КонецПроцедуры

Процедура ДействияФормыОК(Кнопка)
	
	Закрыть(КомпоновщикНастроек.ПолучитьНастройки());
	
КонецПроцедуры  

Процедура ПриПолученииДанныхДоступныхПолей(Элемент, ОформленияСтрок)
	ирКлиент.ПриПолученииДанныхТабличногоПоляКомпоновкиЛкс(ЭтаФорма, Элемент, ОформленияСтрок);
КонецПроцедуры  

Процедура ТабличноеПолеПриИзмененииФлажка(Элемент, Колонка)
	ирКлиент.ТабличноеПолеПриИзмененииФлажкаЛкс(ЭтаФорма, Элемент, Колонка);
КонецПроцедуры

Процедура ТабличноеПолеПриАктивизацииСтроки(Элемент)
	ирКлиент.ТабличноеПолеПриАктивизацииСтрокиЛкс(ЭтаФорма, Элемент);
КонецПроцедуры

Процедура ПолеКомпоновкиОкончаниеВводаТекста(Элемент, Текст, Значение, СтандартнаяОбработка)
	ирКлиент.ПолеВвода_ОкончаниеВводаТекстаЛкс(Элемент, Текст, Значение, СтандартнаяОбработка, , Истина, ЭтаФорма);
КонецПроцедуры

Процедура ПолеКомпоновкиАвтоПодборТекста(Элемент, Текст, ТекстАвтоПодбора, СтандартнаяОбработка)
	ирКлиент.ПолеВвода_ОкончаниеВводаТекстаЛкс(Элемент, Текст,, СтандартнаяОбработка, , Истина, ЭтаФорма,, ТекстАвтоПодбора);
КонецПроцедуры

Процедура ОтборЗначениеНачалоВыбора(Элемент, СтандартнаяОбработка)
	ирКлиент.ПолеВводаКолонкиРасширенногоЗначения_НачалоВыбораЛкс(ЭтаФорма, ТекущийЭлемент, СтандартнаяОбработка,, Истина,, "ПравоеЗначение");
КонецПроцедуры 

Процедура ОтборЗначениеОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
	ирКлиент.ОтборЗначениеОбработкаВыбораЛкс(ЭтаФорма, ТекущийЭлемент, ВыбранноеЗначение, СтандартнаяОбработка);
КонецПроцедуры

Процедура КлсКомандаНажатие(Кнопка) Экспорт 
	
	ирКлиент.УниверсальнаяКомандаФормыЛкс(ЭтаФорма, Кнопка);
	
КонецПроцедуры

Процедура ДействияФормыЗагрузитьНастройки(Кнопка)
	Файл = ирКлиент.ВыбратьФайлЛкс(, "xml", "Настройки компоновки");
	Если Файл <> Неопределено Тогда
		КомпоновщикНастроек.ЗагрузитьНастройки(ирОбщий.ОбъектИзСтрокиXMLЛкс(Новый Файл(Файл)));
		ЭтаФорма.Модифицированность = Истина;
	КонецЕсли;
КонецПроцедуры

Процедура ДействияФормыСохранитьНастройки(Кнопка)
	Файл = ирКлиент.ВыбратьФайлЛкс(Ложь, "xml", "Настройки компоновки");
	Если Файл <> Неопределено Тогда
		ирОбщий.ОбъектВСтрокуXMLЛкс(КомпоновщикНастроек.ПолучитьНастройки(),, Файл);
	КонецЕсли;
КонецПроцедуры

ирКлиент.ИнициироватьФормуЛкс(ЭтаФорма, "Обработка.ирКонсольЗапросов.Форма.ФормаНастройки");
