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