#Область ОбработчикиСобытийФормы
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Параметры.Свойство("Родитель", Родитель);
Параметры.Свойство("ТипАдреса", ТипАдреса);
ПараметрыПоиска = Новый Структура;
Уровень = 7;
ДанныеКлассификатора = Обработки.РасширенныйВводКонтактнойИнформации.АдресаДляИнтерактивногоВыбора(Родитель, Уровень, ТипАдреса, ПараметрыПоиска);
ВариантыАдреса.Загрузить(ДанныеКлассификатора.Данные);
НаселенныйПунктДетально = Параметры.НаселенныйПунктДетально;
Если ОбщегоНазначения.ЭтоМобильныйКлиент() Тогда
Элементы.Переместить(Элементы.ВариантыАдресаНайти, Элементы.ФормаКоманднаяПанель);
Элементы.Переместить(Элементы.ВариантыАдресаОтменитьПоиск, Элементы.ФормаКоманднаяПанель);
Элементы.Переместить(Элементы.ФормаСправка, Элементы.ФормаКоманднаяПанель);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "Выбрать", "Видимость", Ложь);
ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "Найти", "ПоложениеЗаголовка", ПоложениеЗаголовкаЭлементаФормы.Авто);
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиСобытийЭлементовШапкиФормы
&НаКлиенте
Процедура ВариантыАдресаВыборЗначения(Элемент, Значение, СтандартнаяОбработка)
ПроизвестиВыбор(Значение);
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиКомандФормы
&НаКлиенте
Процедура Выбрать(Команда)
ПроизвестиВыбор(Элементы.ВариантыАдреса.ТекущаяСтрока);
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
&НаКлиенте
Процедура ПроизвестиВыбор(Знач НомерСтроки)
Если НомерСтроки = Неопределено Тогда
Возврат;
КонецЕсли;
Данные = ВариантыАдреса.НайтиПоИдентификатору(НомерСтроки);
Если Данные = Неопределено Тогда
Возврат;
ИначеЕсли Не Данные.Неактуален Тогда
Результат = Новый Структура();
Результат.Вставить("Идентификатор", Данные.Идентификатор);
Результат.Вставить("Муниципальный", РаботаСАдресамиКлиентСервер.ЭтоМуниципальныйАдрес(ТипАдреса));
Закрыть(Результат);
Возврат;
КонецЕсли;
КонецПроцедуры
#КонецОбласти