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