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