&НаКлиенте
Перем КонтекстЭДОКлиент Экспорт;
&НаКлиенте
Перем ДанныеОрганизации;
&НаКлиенте
Перем СтруктураДанныхСпецоператорыСвязи;
&НаСервере
Перем ОбработкаЭДО;
#Область ОбработчикиСобытийФормы
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда
Возврат;
КонецЕсли;
РучнойВвод = Параметры.РучнойВвод;
ЗначениеКопированияДокумент = Параметры.ЗначениеКопирования;
МестоХраненияКлюча = КриптографияЭДКОКлиентСервер.ОпределитьМестоХраненияКлюча(
Объект.МодельХраненияЗакрытогоКлюча,
ОбработкаЗаявленийАбонентаКлиентСервер.ПолучитьПараметрПодключения(Объект, "УчетнаяЗапись"));
ПоддерживаетсяМультирежим = Мультирежим.ПоддерживаетсяМультирежим();
ЗаполнитьСписокВыбораРегионовРФ();
ВерсияБСП = СтандартныеПодсистемыСервер.ВерсияБиблиотеки();
КонтекстЭДОСервер = ДокументооборотСКО.ПолучитьОбработкуЭДО();
ИспользоватьРегНомерСФР = ДокументооборотСКОВызовСервера.СобытиеНаступилоИспользоватьРегНомерСФР();
ПриСозданииНаСервере_ИнициализацияПФР();
УправлениеЭлементамиФормы();
ИнициализироватьВыводСтатусовИВажныхСообщений_85();
КонецПроцедуры
&НаСервере
Процедура ПриСозданииНаСервере_ИнициализацияПФР()
КонтекстЭДОСервер = ДокументооборотСКО.ПолучитьОбработкуЭДО();
КонтекстЭДОСервер.Мастер_ПриСозданииНаСервере(ЭтотОбъект, Объект.Ссылка);
КонецПроцедуры
&НаКлиенте
Процедура ПриОткрытии(Отказ)
ОписаниеОповещения = Новый ОписаниеОповещения("ПриОткрытииЗавершение", ЭтотОбъект);
ДокументооборотСКОКлиент.ПолучитьКонтекстЭДО(ОписаниеОповещения);
КонецПроцедуры
&НаСервере
Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи)
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда
МодульУправлениеДоступом = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступом");
МодульУправлениеДоступом.ПослеЗаписиНаСервере(ЭтотОбъект, ТекущийОбъект, ПараметрыЗаписи);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
Если ИмяСобытия = "ЗаполнитьСводнуюИнформациюПоЗаявлениюАбонентаСпецоператораСвязи" Тогда
Если Параметр = Объект.Ссылка Тогда
ОбновитьДанныеОбъекта();
ЗаполнитьСводнуюИнформацию();
КонецЕсли;
ИначеЕсли ИмяСобытия = "Завершение отправки"
И ТипЗнч(Параметр) = Тип("Структура")
И Параметр.Свойство("Ссылка")
И (Параметр.Ссылка = Объект.Ссылка ИЛИ Параметр.Ссылка = ТекущееЗаявлениеПо1СОтчетности) Тогда
ЗаполнитьСводнуюИнформацию();
ИзменитьОформлениеПанелиПФРВМастере();
ИначеЕсли ИмяСобытия = "ОтказОтЭДО" И Объект.Ссылка = Источник Тогда
ЗаполнитьСводнуюИнформацию();
КонецЕсли;
Если РегламентированнаяОтчетностьКлиент.ЭтоСобытиеЗавершениеОтправки(ИмяСобытия) Тогда
ВывестиСтатусыИВыжныеСообщенияНаФормуНаСервере();
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура ПриЧтенииНаСервере(ТекущийОбъект)
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда
МодульУправлениеДоступом = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступом");
МодульУправлениеДоступом.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект);
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиСобытийЭлементовШапкиФормы
#Область ЗаявленияВПФР
&НаКлиенте
Процедура ПодсказкаПФРОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
КонтекстЭДОКлиент.НачатьОтправкуЗаявленияИзПанельПФР(ЭтотОбъект);
КонецПроцедуры
#КонецОбласти
&НаКлиенте
Процедура СкачатьVipNetCSPНажатие(Элемент)
КонтекстЭДОКлиент.ОткрытьСтраницуДляСкачивания(ПредопределенноеЗначение("Перечисление.ТипыКриптоПровайдеров.VipNet"));
КонецПроцедуры
&НаКлиенте
Процедура СкачатьCryptoProCSPНажатие(Элемент)
КонтекстЭДОКлиент.ОткрытьСтраницуДляСкачивания(ПредопределенноеЗначение("Перечисление.ТипыКриптоПровайдеров.CryptoPro"));
КонецПроцедуры
&НаКлиенте
Процедура АдресНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
Если Элемент.Имя = "АдресЮридический" Тогда
Адрес = Объект.АдресЮридический;
Иначе
Адрес = Объект.АдресФактический;
КонецЕсли;
Оповещение = Новый ОписаниеОповещения(
"ОткрытьФормуКонтактнойИнформацииЗавершение",
ЭтотОбъект,
Элемент);
ДополнительныеПараметры = КонтекстЭДОКлиент.ПараметрыПроцедурыРедактироватьАдрес();
ДополнительныеПараметры.Вставить("Адрес", Адрес);
ДополнительныеПараметры.Вставить("АдресИмя", Элемент.Имя);
ДополнительныеПараметры.Вставить("Элемент", Элемент);
ДополнительныеПараметры.Вставить("Оповещение", Оповещение);
КонтекстЭДОКлиент.РедактироватьАдрес(ДополнительныеПараметры);
КонецПроцедуры
&НаКлиенте
Процедура СпецоператорИУЦОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
ПолеHTMLСоглашения = КонтекстЭДОКлиент.HTMLДокСоглашения(Объект.Ссылка);
КонецПроцедуры
&НаКлиенте
Процедура АдресЮридическийОчистка(Элемент, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
КонецПроцедуры
&НаКлиенте
Процедура ОрганизацияПриИзменении(Элемент)
ПризнакОбособленногоПодразделения = Ложь;
ОчиститьДанныеСотрудника();
Объект.Получатели.Очистить();
ОчиститьРеквизитыФормы();
Если ЗначениеЗаполнено(Объект.Организация) Тогда
СтруктураРеквизитов = Новый Структура("Организация,ПриОткрытии",?(ЗначениеЗаполнено(Объект.Организация),Объект.Организация,Неопределено),Ложь);
КонтекстЭДОКлиент.ЗаполнитьДанныеОрганизации(СтруктураРеквизитов);
ДанныеЗаполнения = КонтекстЭДОКлиент.ДополнитьДанныеОрганизацииДаннымиПоОтветственнымЛицам(СтруктураРеквизитов);
ДанныеОрганизации = ДанныеЗаполнения.СтруктураДанныхОрганизации;
ЗаполнитьДанныеПоОрганизации(ДанныеЗаполнения);
КонецЕсли;
ОбновитьЭлементыСтраницыОтчетностьВФСРАР(ЭтотОбъект);
ОбновитьЭлементыСтраницыОтчетностьВРПН(ЭтотОбъект);
ОбновитьЭлементыСтраницыОтчетностьВФТС(ЭтотОбъект);
КонецПроцедуры
&НаКлиенте
Процедура ОрганизацияОчистка(Элемент, СтандартнаяОбработка)
ОчиститьРеквизитыФормы();
Объект.Организация = "";
КонецПроцедуры
&НаКлиенте
Процедура АдресФактическийОчистка(Элемент, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
КонецПроцедуры
&НаКлиенте
Процедура СотрудникОчистка(Элемент, СтандартнаяОбработка)
Объект.ВладелецЭЦП = Неопределено;
ОчиститьДанныеСотрудника();
Модифицированность = Истина;
КонецПроцедуры
&НаКлиенте
Процедура СпецоператорИУЦПриИзменении(Элемент)
Модифицированность = Истина;
ОбновитьЭлементыСтраницыОтчетностьВФСРАР(ЭтотОбъект);
ОбновитьЭлементыСтраницыОтчетностьВРПН(ЭтотОбъект);
ОбновитьЭлементыСтраницыОтчетностьВФТС(ЭтотОбъект);
КонецПроцедуры
&НаКлиенте
Процедура Декорация3Нажатие(Элемент)
КонтекстЭДОКлиент.ОткрытьСтраницуУЦНажатие(СпецоператорИУЦ);
КонецПроцедуры
&НаКлиенте
Процедура ВыборКриптопровайдераПриИзменении(Элемент)
Модифицированность = Истина;
КартинкаВидимость = Ложь;
ОписаниеОповещения = Новый ОписаниеОповещения("ВыборКриптопровайдераПриИзмененииЗавершение", ЭтотОбъект);
КонтекстЭДОКлиент.ПолеВыбораКриптопровайдераПриИзменении(Элемент,ТаблицаЗначенийКС,КартинкаВидимость,ВыборКриптопровайдера,КриптопровайдерРекомендация,ОписаниеОповещения);
КонецПроцедуры
&НаКлиенте
Процедура СпецоператорИУЦОчистка(Элемент, СтандартнаяОбработка)
ПолеHTMLСоглашения = "";
КонецПроцедуры
&НаКлиенте
Процедура ПолучателиВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
Если НЕ ТолькоПросмотр Тогда
РедактироватьВыбранноеНаправление();
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПодатьЗаявкуНаСертификатДляФСРАРПриИзменении(Элемент)
ОбновитьЭлементыСтраницыОтчетностьВФСРАР(ЭтотОбъект);
КонецПроцедуры
&НаКлиенте
Процедура ПодатьЗаявкуНаПодключениеРПНПриИзменении(Элемент)
ОбновитьЭлементыСтраницыОтчетностьВРПН(ЭтотОбъект);
КонецПроцедуры
&НаКлиенте
Процедура ПодатьЗаявкуНаПодключениеФТСПриИзменении(Элемент)
ОбновитьЭлементыСтраницыОтчетностьВФТС(ЭтотОбъект);
КонецПроцедуры
&НаКлиенте
Процедура ГиперссылкаПротоколНажатие(Элемент)
ЭлектронныйДокументооборотСКонтролирующимиОрганамиКлиент.ОткрытьПротоколИзПанелиОтправки(ЭтаФорма);
КонецПроцедуры
&НаКлиенте
Процедура ЭтапыОтправкиНажатие(Элемент)
ЭлектронныйДокументооборотСКонтролирующимиОрганамиКлиент.ОткрытьСостояниеОтправкиИзПанелиОтправки(ЭтаФорма);
КонецПроцедуры
&НаКлиенте
Процедура КритическиеОшибкиОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
ЭлектронныйДокументооборотСКонтролирующимиОрганамиКлиент.ОткрытьКритическиеОшибкиИзПанелиОтправки(ЭтаФорма);
КонецПроцедуры
&НаКлиенте
Процедура СотрудникПриИзменении(Элемент)
ЗаполнитьДанныеВладельцаЭЦП();
КонецПроцедуры
&НаКлиенте
Процедура ВладелецЭЦПТипПриИзменении(Элемент)
ОчиститьДанныеСотрудника();
СменитьВладельцаЭЦП();
КонецПроцедуры
&НаКлиенте
Процедура ВладелецЭЦПВидДокументаПриИзменении(Элемент)
УстановитьВидимостьКодаПодразделения(ЭтотОбъект);
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиКомандФормы
&НаКлиенте
Процедура ДействияФормыПечатьЗаявка(Команда)
Если ЕстьОшибкаЗаполненияУЦ() Тогда
Возврат
КонецЕсли;
КонтекстЭДОКлиент.НапечататьЗаявлениеПо1СОтчетности(Объект);
КонецПроцедуры
&НаКлиенте
Процедура ДействияФормыПечатьСоглашение(Команда)
Если ЕстьОшибкаЗаполненияУЦ() Тогда Возврат КонецЕсли;
КонтекстЭДОКлиент.ПечатьСоглашенияобОказанииУслуг(Объект);
КонецПроцедуры
&НаКлиенте
Процедура ДействияФормыПечатьЛицензия(Команда)
КонтекстЭДОКлиент.ПечатьЛицензииОбИспользованииПО(Объект);
КонецПроцедуры
&НаКлиенте
Процедура ДействияФормыПечатьСертификат(Команда)
КонтекстЭДОКлиент.ПечатьСертификатаПользователя(Объект);
КонецПроцедуры
&НаКлиенте
Процедура ДействиеФормыПечатьПакет(Команда)
КонтекстЭДОКлиент.ПечатьПакетаДокументов(Объект);
КонецПроцедуры
&НаКлиенте
Процедура ПечатьСоглашений(Команда)
Элементы.ПолеHTMLСоглашения.Документ.execCommand("Print");
КонецПроцедуры
&НаКлиенте
Процедура ДобавитьНаправление(Команда)
Если ПроверитьОрганизацию() Тогда
Возврат;
КонецЕсли;
ОткрытьФормуНаправления("Добавить", "Получатели");
Модифицированность = Истина;
КонецПроцедуры
&НаКлиенте
Процедура РедактироватьНаправление(Команда)
РедактироватьВыбранноеНаправление();
КонецПроцедуры
&НаКлиенте
Процедура УдалитьНаправление(Команда)
КонтекстЭДОКлиент.УдалитьНаправление(
ЭтотОбъект,
Объект.Получатели,
"Получатели",
"Удалить");
КонецПроцедуры
&НаКлиенте
Процедура ВосстановитьНаправления(Команда)
Если ПроверитьОрганизацию() Тогда
Возврат;
КонецЕсли;
ПодтвердитьВосстановлениеНаправления();
КонецПроцедуры
&НаКлиенте
Процедура ОбновитьСтатус(Команда)
Если Объект.Статус=ПредопределенноеЗначение("Перечисление.СтатусыЗаявленияАбонентаСпецоператораСвязи.Отправлено") Тогда
ОписаниеОповещения = Новый ОписаниеОповещения("ОбновитьСтатусЗавершение", ЭтотОбъект);
ТекстВопроса = НСтр("ru = 'Вы уверены, что хотите проверить наличие ответа на заявление?'");
ПоказатьВопрос(ОписаниеОповещения, ТекстВопроса, РежимДиалогаВопрос.ДаНет, , КодВозвратаДиалога.Да);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ОбновитьОтправку(Команда)
ПолучитьЗарегистрироватьОтвет();
КонецПроцедуры
&НаКлиенте
Процедура ОтправитьНеотправленноеИзвещение(Команда)
ЭлектронныйДокументооборотСКонтролирующимиОрганамиКлиент.ОтправитьНеотправленноеИзвещениеИзПанелиОтправки(ЭтаФорма);
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
&НаСервере
Процедура ИзменитьОформлениеПанелиПФРВМастере() Экспорт
КонтекстЭДОСервер = ДокументооборотСКО.ПолучитьОбработкуЭДО();
КонтекстЭДОСервер.ИзменитьОформлениеПанелиПФРВМастере(ЭтотОбъект);
КонецПроцедуры
&НаСервере
Функция НужноОтправитьЗаявлениеВПФРИзМастера(Вид) Экспорт
КонтекстЭДОСервер = ДокументооборотСКО.ПолучитьОбработкуЭДО();
Возврат КонтекстЭДОСервер.НужноОтправитьЗаявлениеВПФРИзМастера(ЭтотОбъект, Вид);
КонецФункции
#Область ЗаявленияВПФР
#КонецОбласти
&НаКлиентеНаСервереБезКонтекста
Процедура УстановитьВидимостьКодаПодразделения(Форма)
ВыбранПаспортРФ = ЭлектронныйДокументооборотСКонтролирующимиОрганамиВызовСервера.ЭтоПаспортРФ(Форма.Объект.ВладелецЭЦПВидДокумента);
ВидимостьКодаПодразделения = ВыбранПаспортРФ;
Форма.Элементы.ВладелецЭЦПКодПодразделения.Видимость = ВидимостьКодаПодразделения;
КонецПроцедуры
#Область ДобавлениеУдалениеРедактированиеКодовОрганов
#Область ДобавлениеИРедактирование
&НаКлиенте
Процедура РедактироватьВыбранноеНаправление()
ТекущаяСтрока = Элементы.Получатели.ТекущаяСтрока;
Если КонтекстЭДОКлиент.ТекущаяСтрокаВыбрана(Объект.Получатели, ТекущаяСтрока,"редактирования") Тогда
ОткрытьФормуНаправления("Редактировать", "Получатели");
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ОткрытьФормуНаправления(Действие, ИмяТаблицыФормы)
ДанныеОрганизации.Вставить("ОбъектДополнительныйКодФСС", Объект.ДополнительныйКодФСС);
АдресПолучателей = АдресПолучателей(ИмяТаблицыФормы);
КонтекстЭДОКлиент.ОткрытьФормуНаправления(
ЭтотОбъект,
Действие,
ИмяТаблицыФормы,
ДанныеОрганизации,
Ложь,
АдресПолучателей);
КонецПроцедуры
&НаКлиенте
Процедура ОткрытьФормуНаправленияЗавершение(Результат, ВходящийКонтекст) Экспорт
КонтекстЭДОКлиент.ОткрытьФормуНаправленияЗавершение(
ЭтотОбъект,
Объект.Получатели,
Результат,
ВходящийКонтекст);
СкрытьКнопкуУдаленияНаправления();
Модифицированность = Истина;
КонецПроцедуры
&НаСервере
Функция АдресПолучателей(ИмяТаблицыФормы) Экспорт
ТаблицаПолучателей = Объект.Получатели.Выгрузить();
Возврат ПоместитьВоВременноеХранилище(ТаблицаПолучателей, Новый УникальныйИдентификатор);
КонецФункции
#КонецОбласти
#Область Восстановление
&НаКлиенте
Процедура ПодтвердитьВосстановлениеНаправления()
ОписаниеОповещения = Новый ОписаниеОповещения(
"ВосстановитьНаправленияЗавершение",
ЭтотОбъект);
ТекстВопроса = НСтр("ru = 'Восстановить значения кодов по умолчанию?'");
ПоказатьВопрос(
ОписаниеОповещения,
ТекстВопроса,
РежимДиалогаВопрос.ДаНет
,
,
КодВозвратаДиалога.Да);
КонецПроцедуры
&НаКлиенте
Процедура ВосстановитьНаправленияЗавершение(РезультатВопроса, ДополнительныеПараметры) Экспорт
Если РезультатВопроса = КодВозвратаДиалога.Да Тогда
Объект.Получатели.Очистить();
КонтекстЭДОКлиент.ВосстановитьНаправленияПоУмолчанию(
Объект.Получатели,
ДанныеОрганизации);
СкрытьКнопкуУдаленияНаправления();
Модифицированность = Истина;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ВосстановитьНаправленияПоУмолчанию(ПрограммноеДействие = Ложь)
Если НЕ ПрограммноеДействие И ПроверитьОрганизацию() тогда
Возврат;
КонецЕсли;
КонтекстЭДОКлиент.ВосстановитьНаправленияПоУмолчанию(Объект.Получатели,ДанныеОрганизации);
Элементы.Удалить.Доступность = Объект.Получатели.Количество() <> 0;
КонецПроцедуры
#КонецОбласти
#Область УдалениеНаправления
&НаКлиенте
Процедура УдалитьНаправлениеЗавершение(РезультатВопроса, ДополнительныеПараметры) Экспорт
КонтекстЭДОКлиент.УдалитьНаправлениеЗавершение(
ЭтотОбъект,
Объект.Получатели,
РезультатВопроса,
ДополнительныеПараметры);
Модифицированность = Истина;
КонецПроцедуры
#КонецОбласти
&НаКлиенте
Процедура СкрытьКнопкуУдаленияНаправления()
Элементы.Удалить.Доступность = Объект.Получатели.Количество() <> 0;
КонецПроцедуры
#КонецОбласти
&НаКлиенте
Процедура ЗаполнитьСписокУЦ()
Спецоператоры = КонтекстЭДОКлиент.ПолучитьСпецоператорыСвязи(
СтруктураДанныхСпецоператорыСвязи.СпецоператорыСвязи,
СтруктураДанныхСпецоператорыСвязи.Макет);
Элементы.СпецоператорИУЦ.СписокВыбора.ЗагрузитьЗначения(Спецоператоры);
Если НЕ ПустаяСтрока(Объект.СпецоператорСвязи) Тогда
СпецоператорИУЦ = Объект.СпецоператорСвязи;
ИначеЕсли Элементы.СпецоператорИУЦ.СписокВыбора.Количество() = 1 Тогда
СпецоператорИУЦ = Элементы.СпецоператорИУЦ.СписокВыбора.Получить(0).Значение;
Объект.СпецоператорСвязи = СпецоператорИУЦ;
Элементы.СпецоператорИУЦ.ТолькоПросмотр = Истина;
ИначеЕсли НЕ ЗначениеЗаполнено(Объект.СпецоператорСвязи)
И НЕ СтруктураДанныхСпецоператорыСвязи.ЗначениеЗаполненияСпецоператораСвязи = Неопределено Тогда
СпецоператорИУЦ = СтруктураДанныхСпецоператорыСвязи.ЗначениеЗаполненияСпецоператораСвязи;
Объект.СпецоператорСвязи = СпецоператорИУЦ;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ЗаполнитьСписокКриптопровайдеровЗавершение(Результат, ВходящийКонтекст) Экспорт
Если Результат.Выполнено Тогда
ЭтоLinux = ОбщегоНазначенияЭДКОКлиент.ЭтоКриптопровайдерLinux();
ПоддерживаемыеКриптопровайдеры = КриптографияЭДКОКлиентСервер.ПоддерживаемыеКриптопровайдеры(, ЭтоLinux);
ИндексКриптопровайдеров = Неопределено;
Для каждого Криптопровайдер Из Результат.Криптопровайдеры Цикл
СвойстваКриптопровайдера = КриптографияЭДКОКлиентСервер.СвойстваКриптопровайдера(
Криптопровайдер.Имя,
Криптопровайдер.Тип,
ПоддерживаемыеКриптопровайдеры,
ИндексКриптопровайдеров);
Если СвойстваКриптопровайдера.ТипКриптопровайдера = ПредопределенноеЗначение("Перечисление.ТипыКриптоПровайдеров.VipNet") Тогда
ТаблицаЗначенийКС.Получить(0).УстановленОС = Истина;
ИначеЕсли СвойстваКриптопровайдера.ТипКриптопровайдера = ПредопределенноеЗначение("Перечисление.ТипыКриптоПровайдеров.CryptoPro") Тогда
ТаблицаЗначенийКС.Получить(1).УстановленОС = Истина;
КонецЕсли;
КонецЦикла;
КонецЕсли;
ТипИмяКриптопровайдера = КонтекстЭДОКлиент.ПолучитьИмяТипКриптопровайдера();
Имя = ТипИмяКриптопровайдера.Имя;
Тип = ТипИмяКриптопровайдера.Тип;
Если Тип <> Неопределено И Имя <> Неопределено Тогда
СвойстваКриптопровайдера = КриптографияЭДКОКлиентСервер.СвойстваКриптопровайдера(Имя, Тип);
Если СвойстваКриптопровайдера <> Неопределено Тогда
Если СвойстваКриптопровайдера.ТипКриптопровайдера = ПредопределенноеЗначение("Перечисление.ТипыКриптоПровайдеров.VipNet") Тогда
ТаблицаЗначенийКС.Получить(0).Выбран1с = Истина;
ИначеЕсли СвойстваКриптопровайдера.ТипКриптопровайдера = ПредопределенноеЗначение("Перечисление.ТипыКриптоПровайдеров.CryptoPro") Тогда
ТаблицаЗначенийКС.Получить(1).Выбран1с = Истина;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КоличествоУстановленных = 0;
Для каждого Строка из ТаблицаЗначенийКС Цикл
ПредставлениеТипаКриптопровайдераViPNet = КриптографияЭДКОКлиентСервер.СвойстваКриптопровайдераПоУмолчанию(
ПредопределенноеЗначение("Перечисление.ТипыКриптоПровайдеров.VipNet")).Представление;
Инфотекс = (ВРег(Строка.Криптопровайдер) = ВРег(ПредставлениеТипаКриптопровайдераViPNet));
Если Строка.УстановленОС Тогда
Строка.Статус = "(установлен на компьютере)";
КоличествоУстановленных = КоличествоУстановленных + 1;
ИначеЕсли Инфотекс Тогда
Строка.Статус = "(требуется установка)";
Иначе
Строка.Статус = "(требуется приобретение и установка)";
КонецЕсли;
Строка.ОтображаемыйТекст = Строка.Криптопровайдер + " " + Строка.Статус;
Если Инфотекс Тогда
Элементы.ВыборКриптопровайдера.СписокВыбора[0].Представление = Строка.ОтображаемыйТекст;
Иначе
Элементы.ВыборКриптопровайдера.СписокВыбора[1].Представление = Строка.ОтображаемыйТекст;
КонецЕсли;
КонецЦикла;
Если Объект.Ссылка.Пустая() Тогда
Если КоличествоУстановленных = 1 тогда
Для каждого Строка из ТаблицаЗначенийКС Цикл
Если Строка.УстановленОС Тогда
Если ВРег(Строка.Криптопровайдер) = ВРег("ViPNet CSP") Тогда
ВыборКриптопровайдера = 1;
Иначе
ВыборКриптопровайдера = 2;
КонецЕсли;
Прервать;
КонецЕсли;
КонецЦикла;
КонецЕсли;
Иначе
Если СокрЛП(Объект.ТипКриптопровайдера) <> "Vip net" Тогда
ВыборКриптопровайдера = 2;
Иначе
ВыборКриптопровайдера = 1;
КонецЕсли;
КонецЕсли;
КартинкаВидимость = Ложь;
КонтекстЭДОКлиент.ВыработатьРекомендацииПоКриптопровайдеру(ТаблицаЗначенийКС,КриптопровайдерРекомендация,ВыборКриптопровайдера,КартинкаВидимость);
Элементы.ПолеКартинкиВнимание48.Видимость = КартинкаВидимость;
КонецПроцедуры
&НаКлиенте
Процедура ЗаполнитьСводнуюИнформацию()
ПараметрыПрорисовкиПанелиОтправки = ДокументооборотСКОВызовСервера.ПараметрыПрорисовкиПанелиОтправки(Объект.Ссылка, Объект.Организация);
ЭлектронныйДокументооборотСКонтролирующимиОрганамиКлиентСервер.ПрименитьПараметрыПрорисовкиПанелиОтправки(ЭтаФорма, ПараметрыПрорисовкиПанелиОтправки);
Элементы.ОбновитьОтправку.Видимость = КонтекстЭДОКлиент.КнопкаОбновленияВЗаявленииНаПодключениеДоступна(Объект.Ссылка);
КонецПроцедуры
&НаКлиенте
Процедура ПриОткрытииЗавершение(Результат, ДополнительныеПараметры) Экспорт
КонтекстЭДОКлиент = Результат.КонтекстЭДО;
СтруктураРеквизитов = Новый Структура("Организация,ПриОткрытии",?(ЗначениеЗаполнено(Объект.Организация),Объект.Организация,Неопределено),Истина);
ОрганизацияЗаполнена = ЗначениеЗаполнено(Объект.Организация);
Если ОрганизацияЗаполнена Тогда
СтруктураРеквизитов.Вставить("АдресЮридический",Объект.АдресЮридический);
СтруктураРеквизитов.Вставить("АдресФактический",Объект.АдресФактический);
КонецЕсли;
КонтекстЭДОКлиент.ЗаполнитьДанныеОрганизации(СтруктураРеквизитов);
ДанныеЗаполнения = КонтекстЭДОКлиент.ДополнитьДанныеОрганизацииДаннымиПоОтветственнымЛицам(СтруктураРеквизитов);
Если ОрганизацияЗаполнена Тогда
ЮрАдрес = ДанныеЗаполнения.ЮрАдрес;
ФактАдрес = ДанныеЗаполнения.ФактАдрес;
ДанныеОрганизации = ДанныеЗаполнения.СтруктураДанныхОрганизации;
Если ЭтоНовый Тогда
ЗаполнитьДанныеПоОрганизации(ДанныеЗаполнения);
Объект.ВладелецЭЦПТип = ПредопределенноеЗначение("Перечисление.ТипыВладельцевЭЦП.Руководитель");
КонецЕсли;
Если ТолькоПросмотр Тогда
Элементы.Сотрудник.ТолькоПросмотр = ТолькоПросмотр;
КонецЕсли;
КонецЕсли;
СтруктураДанныхСпецоператорыСвязи = Новый Структура();
СтруктураДанныхСпецоператорыСвязи.Вставить("СпецоператорыСвязи", ДанныеЗаполнения.СпецоператорыСвязи);
СтруктураДанныхСпецоператорыСвязи.Вставить("Макет", ДанныеЗаполнения.МакетПараметрыСпецоператоровСвязи);
СтруктураДанныхСпецоператорыСвязи.Вставить("ТекстМакетаСоглашение", ДанныеЗаполнения.ТекстМакетаСоглашение);
СтруктураДанныхСпецоператорыСвязи.Вставить("ЗначениеЗаполненияСпецоператораСвязи", ДанныеЗаполнения.ЗначениеЗаполненияСпецоператораСвязи);
ЗаполнитьСписокУЦ();
ТекстМакетаСоглашение = Строка(ДанныеЗаполнения.ТекстМакетаСоглашение);
Если СпецоператорИУЦ <> Неопределено Тогда
ПолеHTMLСоглашения = КонтекстЭДОКлиент.HTMLДокСоглашения(Объект.Ссылка);
КонецЕсли;
ЗаполнитьСводнуюИнформацию();
Если КриптографияЭДКОКлиентСервер.ЭтоЛокальнаяПодпись(МестоХраненияКлюча) Тогда
ПредставлениеТипаКриптопровайдераViPNet = КриптографияЭДКОКлиентСервер.СвойстваКриптопровайдераПоУмолчанию(
ПредопределенноеЗначение("Перечисление.ТипыКриптоПровайдеров.VipNet")).Представление;
ПредставлениеТипаКриптопровайдераCryptoPro = КриптографияЭДКОКлиентСервер.СвойстваКриптопровайдераПоУмолчанию(
ПредопределенноеЗначение("Перечисление.ТипыКриптоПровайдеров.CryptoPro")).Представление;
НоваяСтрока = ТаблицаЗначенийКС.Добавить();
НоваяСтрока.Криптопровайдер = ПредставлениеТипаКриптопровайдераViPNet;
НоваяСтрока.УстановленОС = Ложь;
НоваяСтрока.Выбран1с = Ложь;
НоваяСтрока = ТаблицаЗначенийКС.Добавить();
НоваяСтрока.Криптопровайдер = ПредставлениеТипаКриптопровайдераCryptoPro;
НоваяСтрока.УстановленОС = Ложь;
НоваяСтрока.Выбран1с = Ложь;
Оповещение = Новый ОписаниеОповещения("ЗаполнитьСписокКриптопровайдеровЗавершение", ЭтотОбъект);
КриптографияЭДКОКлиент.ПолучитьКриптопровайдеры(Оповещение);
КонецЕсли;
Если Объект.ТипЗаявления = ПредопределенноеЗначение("Перечисление.ТипыЗаявленияАбонентаСпецоператораСвязи.Изменение") Тогда
СформироватьТаблицуИзмененныхДанных();
Иначе
Элементы.Сотрудник.Видимость = Объект.ВладелецЭЦПТип = ПредопределенноеЗначение("Перечисление.ТипыВладельцевЭЦП.ДругойСотрудник");
КонецЕсли;
ДлительнаяОтправкаКлиент.ЗакрытьФормуОжиданияЗагрузкиМодуля();
КонецПроцедуры
&НаСервере
Процедура УправлениеЭлементамиФормы()
ЭтоНовый = Объект.Ссылка.Пустая();
ЛокальнаяПодпись = КриптографияЭДКОКлиентСервер.ЭтоЛокальнаяПодпись(МестоХраненияКлюча);
Элементы.УкажитеКриптопровайдер.Видимость = ЛокальнаяПодпись;
Элементы.ПутьКонтейнерЗакрытогоКлюча.Видимость = ЛокальнаяПодпись;
Если Объект.ТипЗаявления = Перечисления.ТипыЗаявленияАбонентаСпецоператораСвязи.Изменение Тогда
ЭтаФорма.Заголовок = "Заявление на изменение подключения к 1С-Отчетности";
Элементы.ДополнительнаяИнформация.Видимость = Ложь;
КонецЕсли;
Если ЭтоНовый Тогда
Объект.ТипЗаявления = Перечисления.ТипыЗаявленияАбонентаСпецоператораСвязи.Первичное;
Объект.Дата = ТекущаяДатаСеанса();
Объект.Статус = Перечисления.СтатусыЗаявленияАбонентаСпецоператораСвязи.Подготовлено;
Объект.ИдентификаторДокументооборота = нрег(СтрЗаменить(Строка(Новый("УникальныйИдентификатор")),"-",""));
ТолькоПросмотр = Ложь;
ИначеЕсли Объект.Статус = Перечисления.СтатусыЗаявленияАбонентаСпецоператораСвязи.Подготовлено Тогда
ТолькоПросмотр = Ложь;
Иначе
ТолькоПросмотр = Истина;
КонецЕсли;
Элементы.Организация.ТолькоПросмотр = ТолькоПросмотр;
Элементы.СпецоператорИУЦ.ТолькоПросмотр = ТолькоПросмотр;
Элементы.Получатели.КоманднаяПанель.Доступность = НЕ ТолькоПросмотр;
ОрганизацияЗаполнена = ЗначениеЗаполнено(Объект.Организация);
Если НЕ ТолькоПросмотр Тогда
Элементы.АдресЮридический.ЦветФона = Новый Цвет(255,255,255);
Элементы.АдресФактический.ЦветФона = Новый Цвет(255,255,255);
Если ОрганизацияЗаполнена Тогда
Элементы.АдресЮридический.КнопкаВыбора = Истина;
Элементы.АдресФактический.КнопкаВыбора = Истина;
КонецЕсли;
иначе
Элементы.АдресЮридический.КнопкаВыбора = Ложь;
Элементы.АдресФактический.КнопкаВыбора = Ложь;
КонецЕсли;
Элементы.ВыборКриптопровайдера.ТолькоПросмотр = ТолькоПросмотр;
Если НЕ ЗначениеЗаполнено(Объект.Ссылка) Тогда
Модифицированность = Истина;
КонецЕсли;
Если Объект.Статус = Перечисления.СтатусыЗаявленияАбонентаСпецоператораСвязи.Подготовлено Тогда
Элементы.ОтправитьЗаявление.Доступность = Истина;
КонецЕсли;
Если Объект.ТипЗаявления = Перечисления.ТипыЗаявленияАбонентаСпецоператораСвязи.Первичное Тогда
Элементы.ИнтерфейсыЗаявления.ТекущаяСтраница = Элементы.ПервичноеЗаявление;
Иначе
Элементы.ИнтерфейсыЗаявления.ТекущаяСтраница = Элементы.ВторичноеЗаявление;
КонецЕсли;
ОбновитьЭлементыСтраницыОтчетностьВФСРАР(ЭтотОбъект);
ОбновитьЭлементыСтраницыОтчетностьВРПН(ЭтотОбъект);
ОбновитьЭлементыСтраницыОтчетностьВФТС(ЭтотОбъект);
УстановитьВидимостьКодаПодразделения(ЭтотОбъект);
ИзменитьОформлениеПанелиПФРВМастере();
КонецПроцедуры
&НаКлиенте
Процедура ВопросРосалкогольрегулированияЗавершение(РезультатВопроса, ДополнительныеПараметры) Экспорт
ИтогПроверки = ДополнительныеПараметры.ИтогПроверки;
ВыполняемоеОповещение = ДополнительныеПараметры.ВыполняемоеОповещение;
Если РезультатВопроса <> КодВозвратаДиалога.Да Тогда
ИтогПроверки = Ложь;
ВыполнитьОбработкуПослеПроверки(ВыполняемоеОповещение, ИтогПроверки);
ИначеЕсли ЗначениеЗаполнено(Объект.КодРегионаФСРАР) Тогда
ИнформацияОРегионе = ИнформацияОРегионеФСРАРНаСервере(Объект.КодРегионаФСРАР);
СхемаСдачиОтчетности = ПредопределенноеЗначение("Перечисление.СхемыСдачиОтчетностиФСРАР.СдачаВручную");
Если ИнформацияОРегионе <> Неопределено Тогда
СхемаСдачиОтчетности = КонтекстЭДОКлиент.СхемаСдачиОтчетностиФСРАР(Ложь, ИнформацияОРегионе.ТипПортала, Объект.КодРегионаФСРАР);
КонецЕсли;
Если СхемаСдачиОтчетности = ПредопределенноеЗначение("Перечисление.СхемыСдачиОтчетностиФСРАР.СдачаВручную") Тогда
ДопПараметры = Новый Структура("ВыполняемоеОповещение, ИтогПроверки", ВыполняемоеОповещение, ИтогПроверки);
ОписаниеОповещения = Новый ОписаниеОповещения("ВопросФСРАРСдачаВручнуюЗавершение", ЭтотОбъект, ДопПараметры);
ТекстВопроса = "Для выбранного региона поддерживается функция формирования пакета, содержащего подписанную отчетность, для последующей загрузки на соответствующий портал в интернете." + Символы.ВК + Символы.ПС + Символы.ВК + Символы.ПС
+ "Обратите внимание, функция отправки отчетности непосредственно из программы (кнопка ""Отправить"") в текущей версии не поддерживается. Продолжить?";
ПоказатьВопрос(ОписаниеОповещения, ТекстВопроса, РежимДиалогаВопрос.ДаНет, 0, КодВозвратаДиалога.Да);
Иначе
ВыполнитьОбработкуПослеПроверки(ВыполняемоеОповещение, ИтогПроверки);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ВопросФСРАРСдачаВручнуюЗавершение(РезультатВопроса, ДополнительныеПараметры) Экспорт
ИтогПроверки = ДополнительныеПараметры.ИтогПроверки;
ВыполняемоеОповещение = ДополнительныеПараметры.ВыполняемоеОповещение;
Если РезультатВопроса <> КодВозвратаДиалога.Да Тогда
ИтогПроверки = Ложь;
КонецЕсли;
ВыполнитьОбработкуПослеПроверки(ВыполняемоеОповещение, ИтогПроверки);
КонецПроцедуры
&НаКлиенте
Процедура ВыполнитьОбработкуПослеПроверки(ВыполняемоеОповещение, ИтогПроверки)
Объект.Ответственный = ПользователиКлиент.ТекущийПользователь();
ВыполнитьОбработкуОповещения(ВыполняемоеОповещение, ИтогПроверки);
КонецПроцедуры
&НаСервереБезКонтекста
Функция ИнформацияОРегионеФСРАРНаСервере(Знач КодРегиона)
КонтекстЭДОСервер = ДокументооборотСКО.ПолучитьОбработкуЭДО();
Возврат КонтекстЭДОСервер.ИнформацияОРегионеФСРАР(КодРегиона);
КонецФункции
&НаКлиенте
Функция ЕстьОшибкаЗаполненияУЦ()
Если НЕ ЗначениеЗаполнено(Объект.СпецоператорСвязи) ИЛИ СпецоператорИУЦ = Неопределено тогда
ОбщегоНазначенияКлиент.СообщитьПользователю(НСтр("ru = 'Не выбран Удостоверяющий центр.'"), ,"СпецоператорИУЦ");
Возврат Истина;
КонецЕсли;
Возврат Ложь;
КонецФункции
&НаКлиенте
Процедура ОткрытьФормуКонтактнойИнформацииЗавершение(РезультатЗакрытия, ДополнительныеПараметры) Экспорт
НовыйАдрес = КонтекстЭДОКлиент.РедактироватьАдресКонвертацияРезультата(РезультатЗакрытия);
ОбновитьАдрес(НовыйАдрес, ДополнительныеПараметры);
КонецПроцедуры
&НаКлиенте
Процедура ОбновитьАдрес(НовыйАдрес, Элемент)
Если НовыйАдрес.Модифицированность Тогда
Модифицированность = Истина;
Если Элемент.Имя = "АдресЮридический" Тогда
Объект.АдресЮридический = НовыйАдрес.Адрес;
юрАдрес = НовыйАдрес.АдресПредставление;
Иначе
Объект.АдресФактический = НовыйАдрес.Адрес;
ФактАдрес = НовыйАдрес.АдресПредставление;
КонецЕсли;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПолучитьЗарегистрироватьОтвет()
ОписаниеОповещения = Новый ОписаниеОповещения("ПолучитьЗарегистрироватьОтветЗавершение", ЭтотОбъект);
КонтекстЭДОКлиент.ОбновитьСтатусЗаявленияАбонента_ИзПанелиОтправки(ОписаниеОповещения, ЭтаФорма, Объект.Ссылка);
КонецПроцедуры
&НаКлиенте
Процедура ПолучитьЗарегистрироватьОтветЗавершение(Результат, ДополнительныеПараметры) Экспорт
ОповеститьОбИзменении(Объект.Ссылка);
ЗаполнитьСводнуюИнформацию();
ИзменитьОформлениеПанелиПФРВМастере();
КонецПроцедуры
&НаКлиенте
Процедура ПередЗаписьюЗавершение(Результат, ДополнительныеПараметры) Экспорт
Если Результат Тогда
Модифицированность = Ложь;
Записать();
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ОчиститьДанныеСотрудника()
Объект.ВладелецЭЦП = Неопределено;
Объект.ВладелецЭЦППодразделение = "";
Объект.ВладелецЭЦПДолжность = "";
Объект.ВладелецЭЦПФамилия = "";
Объект.ВладелецЭЦПИмя = "";
Объект.ВладелецЭЦПОтчество = "";
Объект.ВладелецЭЦПВидДокумента = ПредопределенноеЗначение("Справочник.ВидыДокументовФизическихЛиц.ПустаяСсылка");
Объект.ВладелецЭЦПСерияДокумента = "";
Объект.ВладелецЭЦПНомерДокумента = "";
Объект.ВладелецЭЦПДатаВыдачиДокумента = "";
Объект.ВладелецЭЦПКемВыданДокумент = "";
Объект.ВладелецЭЦПСНИЛС = "";
Объект.ВладелецЭЦПДатаРождения = Неопределено;
Объект.ВладелецЭЦПМестоРождения = Неопределено;
Объект.ВладелецЭЦПКодПодразделения = Неопределено;
Объект.ВладелецЭЦППол = Неопределено;
Объект.ВладелецЭЦПГражданство = Неопределено;
КонецПроцедуры
&НаКлиенте
Процедура ОчиститьРеквизитыФормы()
Объект.ВладелецЭЦПТип = Неопределено;
Объект.АдресФактический = "";
Объект.АдресЮридический = "";
ЮрАдрес = "";
ФактАдрес = "";
Объект.ИНН = "";
Объект.КПП = "";
Объект.КраткоеНаименование = "";
Объект.ПолноеНаименование = "";
Объект.ТелефонДополнительный = "";
Объект.ТелефонОсновной = "";
Объект.ЭлектроннаяПочта = "";
Объект.РегНомерПФР = "";
Объект.РегНомерСФР = "";
Объект.РегНомерФСС = "";
Объект.ПризнакОбособленногоПодразделения = Ложь;
Объект.КодРегионаФСРАР = Неопределено;
ОчиститьДанныеСотрудника();
Объект.Получатели.Очистить();
Модифицированность = Истина;
Элементы.АдресЮридический.КнопкаВыбора = Ложь;
Элементы.АдресФактический.КнопкаВыбора = Ложь;
Элементы.Сотрудник.Видимость = Ложь;
Объект.ОГРН = "";
Объект.ВладелецЭЦПСНИЛС = "";
КонецПроцедуры
&НаКлиенте
Процедура ЗаполнитьДанныеВладельцаЭЦП()
ВидВладельцаЭЦП = Объект.ВладелецЭЦПТип;
ДанныеСотрудника = ОбработкаЗаявленийАбонентаВызовСервера.ПолучитьДанныеСотрудника(
ВидВладельцаЭЦП,
ДанныеОрганизации,
Объект.ВладелецЭЦП);
Объект.ВладелецЭЦПИмя = ДанныеСотрудника.ФИО.Имя;
Объект.ВладелецЭЦПФамилия = ДанныеСотрудника.ФИО.Фамилия;
Объект.ВладелецЭЦПОтчество = ДанныеСотрудника.ФИО.Отчество;
Объект.ВладелецЭЦПВидДокумента = ДанныеСотрудника.ВидДокумента;
Объект.ВладелецЭЦПСерияДокумента = ДанныеСотрудника.Серия;
Объект.ВладелецЭЦПНомерДокумента = ДанныеСотрудника.Номер;
Объект.ВладелецЭЦПДатаВыдачиДокумента = ДанныеСотрудника.ДатаВыдачи;
Объект.ВладелецЭЦПКемВыданДокумент = ДанныеСотрудника.КемВыдан;
Объект.ВладелецЭЦПДолжность = ДанныеСотрудника.Должность;
Объект.ВладелецЭЦППодразделение = ДанныеСотрудника.Подразделение;
Объект.ВладелецЭЦПСНИЛС = ДанныеСотрудника.СНИЛС;
Объект.ВладелецЭЦПДатаРождения = ДанныеСотрудника.ДатаРождения;
Объект.ВладелецЭЦПМестоРождения = ДанныеСотрудника.МестоРождения;
Объект.ВладелецЭЦППол = ДанныеСотрудника.Пол;
Объект.ВладелецЭЦПГражданство = ДанныеСотрудника.Гражданство;
Объект.ВладелецЭЦПКодПодразделения = ДанныеСотрудника.КодПодразделения;
УстановитьВидимостьКодаПодразделения(ЭтотОбъект);
КонецПроцедуры
&НаКлиенте
Процедура ЗаполнитьДанныеПоОрганизации(ДанныеЗаполнения)
ЮрАдрес = ДанныеЗаполнения.ЮрАдрес;
ФактАдрес = ДанныеЗаполнения.ФактАдрес;
СменитьВладельцаЭЦП();
Элементы.Сотрудник.Видимость = Объект.ВладелецЭЦПТип = ПредопределенноеЗначение("Перечисление.ТипыВладельцевЭЦП.ДругойСотрудник");
ТипОрганизации = ДанныеОрганизации.ТипОрганизации;
Объект.ТипОрганизации = ТипОрганизации;
Объект.ПолноеНаименование = ДанныеОрганизации.НаимЮЛПол;
Объект.КраткоеНаименование = ДанныеОрганизации.КраткоеНаименование;
Объект.ИНН = ДанныеОрганизации.ИННЮЛ;
Объект.КПП = ДанныеОрганизации.КППЮЛ;
Объект.РегНомерПФР = ДанныеОрганизации.РегНомПФР;
Объект.РегНомерСФР = ДанныеОрганизации.РегНомСФР;
Объект.РегНомерФСС = ДанныеОрганизации.РегистрационныйНомерФСС;
Объект.АдресЮридический = ДанныеЗаполнения.АдресЮридический;
Объект.АдресФактический = ДанныеЗаполнения.АдресФактический;
Объект.ТелефонОсновной = ДанныеОрганизации.ТелОрганизации;
Объект.ТелефонДополнительный = ДанныеОрганизации.ТелРук;
Объект.ОГРН = ДанныеОрганизации.ОГРН;
Если ПустаяСтрока(Объект.НомерОсновнойПоставки1с) Тогда
Объект.НомерОсновнойПоставки1с = ДанныеОрганизации.НомерОсновнойПоставки1с;
КонецЕсли;
Если ЮрАдрес = ",,,,,,,,," Тогда
ЮрАдрес = "";
КонецЕсли;
Если ФактАдрес = ",,,,,,,,," Тогда
ФактАдрес = "";
КонецЕсли;
Элементы.АдресЮридический.КнопкаВыбора = Истина;
Элементы.АдресФактический.КнопкаВыбора = Истина;
Если ТипОрганизации Тогда
Объект.ПризнакОбособленногоПодразделения = ДанныеОрганизации.ПризнакОбособленногоПодразделения;
КонецЕсли;
Элементы.ВладелецЭЦПДолжность.АвтоОтметкаНезаполненного = ТипОрганизации;
Элементы.ВладелецЭЦПДолжность.Видимость = ТипОрганизации;
Элементы.Декорация19.Видимость = ТипОрганизации;
Элементы.КПП.АвтоОтметкаНезаполненного = ТипОрганизации;
Элементы.КПП.ОтметкаНезаполненного = ПустаяСтрока(Объект.КПП) И ТипОрганизации;
Элементы.ОГРН.АвтоОтметкаНезаполненного = ТипОрганизации;
Элементы.ОГРН.ОтметкаНезаполненного = ПустаяСтрока(Объект.ОГРН) И ТипОрганизации;
Объект.ЭлектроннаяПочта = ДанныеОрганизации.ЭлектроннаяПочта;
Объект.ДополнительныйКодФСС = ДанныеОрганизации.РеквизитДопКодФСС;
КонтекстЭДОКлиент.ПоказатьДопКодФСС(
ДанныеОрганизации.РеквизитДопКодФСС,
Элементы.ДополнительныйКодФСС,
Объект.ПризнакОбособленногоПодразделения,
Объект.РегНомерФСС);
ВосстановитьНаправленияПоУмолчанию(Истина);
Объект.КодРегионаФСРАР = РегламентированнаяОтчетностьКлиентСервер.РазложитьАдрес(Объект.АдресЮридический).Регион;
КонецПроцедуры
&НаКлиенте
Функция ПроверитьОрганизацию()
Булево = Ложь;
Если НЕ ЗначениеЗаполнено(Объект.Организация) Тогда
ОбщегоНазначенияКлиент.СообщитьПользователю(НСтр("ru = 'Сначала укажите организацию!'"), ,"Объект.Организация");
Булево = Истина;
КонецЕсли;
Возврат Булево;
КонецФункции
&НаКлиенте
Процедура СменитьВладельцаЭЦП()
Если Объект.ВладелецЭЦПТип = ПредопределенноеЗначение("Перечисление.ТипыВладельцевЭЦП.Руководитель") Тогда
Объект.ВладелецЭЦП = ЭлектронныйДокументооборотСКонтролирующимиОрганамиВызовСервераПереопределяемый.Руководитель(Объект.Организация);
ИначеЕсли Объект.ВладелецЭЦПТип = ПредопределенноеЗначение("Перечисление.ТипыВладельцевЭЦП.ГлавныйБухгалтер") Тогда
Объект.ВладелецЭЦП = ЭлектронныйДокументооборотСКонтролирующимиОрганамиВызовСервераПереопределяемый.ГлБухгалтер(Объект.Организация);
ИначеЕсли Объект.ВладелецЭЦПТип = ПредопределенноеЗначение("Перечисление.ТипыВладельцевЭЦП.ДругойСотрудник") Тогда
ИначеЕсли Объект.ВладелецЭЦПТип = ПредопределенноеЗначение("Перечисление.ТипыВладельцевЭЦП.ПустаяСсылка") Тогда
Объект.ВладелецЭЦПТип = ПредопределенноеЗначение("Перечисление.ТипыВладельцевЭЦП.Руководитель");
КонецЕсли;
Элементы.Сотрудник.Видимость = Объект.ВладелецЭЦПТип = ПредопределенноеЗначение("Перечисление.ТипыВладельцевЭЦП.ДругойСотрудник");
ЗаполнитьДанныеВладельцаЭЦП();
КонецПроцедуры
&НаКлиенте
Процедура ОбновитьСтатусЗавершение(РезультатВопроса, ДополнительныеПараметры) Экспорт
Если РезультатВопроса = КодВозвратаДиалога.Да Тогда
ПолучитьЗарегистрироватьОтвет();
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ВыборКриптопровайдераПриИзмененииЗавершение(СтруктураВозврата, ДополнительныеПараметры) Экспорт
КриптопровайдерРекомендация = СтруктураВозврата.КриптопровайдерРекомендация;
Элементы.ПолеКартинкиВнимание48.Видимость = СтруктураВозврата.КартинкаВидимость;
КонецПроцедуры
&НаКлиентеНаСервереБезКонтекста
Процедура ОбновитьЭлементыСтраницыОтчетностьВФСРАР(Форма)
Элементы = Форма.Элементы;
Объект = Форма.Объект;
ПризнакПоддержкиФСРАР = ЭлектронныйДокументооборотСКонтролирующимиОрганамиВызовСервера.ПолучитьПараметрСпецоператора(Объект.СпецоператорСвязи, "ФСРАРПризнак");
ПризнакПоддержкиФСРАР = (ПризнакПоддержкиФСРАР = Истина ИЛИ ПризнакПоддержкиФСРАР = "Истина");
ДоступностьПодачиЗаявкиНаСертификатДляФСРАР =
ЗначениеЗаполнено(Объект.Организация)
И ПризнакПоддержкиФСРАР
И (Объект.Статус = ПредопределенноеЗначение("Перечисление.СтатусыЗаявленияАбонентаСпецоператораСвязи.Подготовлено"));
ДоступностьЭлементов =
ДоступностьПодачиЗаявкиНаСертификатДляФСРАР
И Объект.ПодатьЗаявкуНаСертификатДляФСРАР;
Элементы.ПодатьЗаявкуНаСертификатДляФСРАР.Доступность = ДоступностьПодачиЗаявкиНаСертификатДляФСРАР;
Элементы.КодРегионаФСРАР.ТолькоПросмотр = НЕ ДоступностьЭлементов;
Элементы.КодРегионаФСРАР.АвтоВыборНезаполненного = ДоступностьЭлементов;
Элементы.КодРегионаФСРАР.АвтоОтметкаНезаполненного = ДоступностьЭлементов;
КонецПроцедуры
&НаКлиентеНаСервереБезКонтекста
Процедура ОбновитьЭлементыСтраницыОтчетностьВРПН(Форма)
Элементы = Форма.Элементы;
Объект = Форма.Объект;
ПризнакПоддержкиРПН = ЭлектронныйДокументооборотСКонтролирующимиОрганамиВызовСервера.ПолучитьПараметрСпецоператора(Объект.СпецоператорСвязи, "РПНПризнак");
ПризнакПоддержкиРПН = (ПризнакПоддержкиРПН = Истина ИЛИ ПризнакПоддержкиРПН = "Истина");
ДоступностьПодачиЗаявкиНаСертификатДляРПН =
ЗначениеЗаполнено(Объект.Организация)
И ПризнакПоддержкиРПН
И (Объект.Статус = ПредопределенноеЗначение("Перечисление.СтатусыЗаявленияАбонентаСпецоператораСвязи.Подготовлено"));
Элементы.ПодатьЗаявкуНаПодключениеРПН.Доступность = ДоступностьПодачиЗаявкиНаСертификатДляРПН;
КонецПроцедуры
&НаКлиентеНаСервереБезКонтекста
Процедура ОбновитьЭлементыСтраницыОтчетностьВФТС(Форма)
Элементы = Форма.Элементы;
Объект = Форма.Объект;
ПризнакПоддержкиФТС = ЭлектронныйДокументооборотСКонтролирующимиОрганамиВызовСервера.ПолучитьПараметрСпецоператора(Объект.СпецоператорСвязи, "ФТСПризнак");
ПризнакПоддержкиФТС = (ПризнакПоддержкиФТС = Истина ИЛИ ПризнакПоддержкиФТС = "Истина");
ДоступностьПодачиЗаявкиНаСертификатДляФТС =
ЗначениеЗаполнено(Объект.Организация)
И ПризнакПоддержкиФТС
И (Объект.Статус = ПредопределенноеЗначение("Перечисление.СтатусыЗаявленияАбонентаСпецоператораСвязи.Подготовлено"));
Элементы.ПодатьЗаявкуНаПодключениеФТС.Доступность = ДоступностьПодачиЗаявкиНаСертификатДляФТС;
КонецПроцедуры
&НаСервере
Процедура ЗаполнитьСписокВыбораРегионовРФ()
КонтекстЭДОСервер = ДокументооборотСКО.ПолучитьОбработкуЭДО();
МакетРегионов = КонтекстЭДОСервер.ПолучитьМакет("ФСРАРПорталыРегионов");
Для НомСтр = 1 По МакетРегионов.ВысотаТаблицы Цикл
КодРегиона = СокрЛП(МакетРегионов.Область(НомСтр, 1, НомСтр, 1).Текст);
НазваниеРегиона = СокрЛП(МакетРегионов.Область(НомСтр, 2, НомСтр, 2).Текст);
Если ЗначениеЗаполнено(КодРегиона) Тогда
Элементы.КодРегионаФСРАР.СписокВыбора.Добавить(КодРегиона, КодРегиона + " - " + НазваниеРегиона);
КонецЕсли;
КонецЦикла;
КонецПроцедуры
&НаСервере
Процедура ОбновитьДанныеОбъекта()
Объект.Статус = Объект.Ссылка.Статус;
Объект.СтатусКомментарий = Объект.Ссылка.СтатусКомментарий;
Объект.УчетнаяЗапись = Объект.Ссылка.УчетнаяЗапись;
Объект.ДатаПолученияОтвета = Объект.Ссылка.ДатаПолученияОтвета;
КонецПроцедуры
&НаСервере
Процедура ДобавитьЖелтыеСтроки()
ПорядковыйНомерСтроки = 0;
КоличествоСтрок = ТаблицаДанныхЗаявленияНаПодключение.Количество();
КоличествоИзмененныхСтрок = ТаблицаДанныхЗаявленияНаПодключение.НайтиСтроки(Новый Структура("ЭтотПараметрИзменился", Истина)).Количество();
ДобавитьВТаблицу("Изменяемые настройки подключения",,,,,0);
Для сч = 0 По КоличествоСтрок - 1 Цикл
СтрокаТаблицаДанных = ТаблицаДанныхЗаявленияНаПодключение[сч];
Если СтрокаТаблицаДанных.ЭтотПараметрИзменился Тогда
ДобавитьВТаблицу(СтрокаТаблицаДанных.НазваниеРеквизита, СтрокаТаблицаДанных.ЗначениеРеквизита, СтрокаТаблицаДанных.ЭтотПараметрИзменился, Ложь, Истина);
КонецЕсли;
СтрокаТаблицаДанных.РазрешеноРедактирование = (НЕ СтрокаТаблицаДанных.ВыделятьСтрокуЖирным И НЕ СтрокаТаблицаДанных.НазваниеРеквизита = "");
СтрокаТаблицаДанных.ПорядковыйНомерСтроки = СтрокаТаблицаДанных.ПорядковыйНомерСтроки + КоличествоИзмененныхСтрок + 1;
КонецЦикла;
ДобавитьВТаблицу("",,,,,КоличествоИзмененныхСтрок + 1);
ТаблицаДанныхЗаявленияНаПодключение.Сортировать("ПорядковыйНомерСтроки");
КонецПроцедуры
&НаСервере
Процедура ДобавитьВТаблицу(
ИзмененныйРеквизит,
ЗначениеРеквизита = "",
ЭтотПараметрИзменился = Неопределено,
ВыделятьЖирным = Ложь,
ВыделятьСтрокуЖелтым = Ложь,
НомерСтроки = Неопределено)
Если НЕ ЗначениеЗаполнено(ЗначениеРеквизита) И НЕ ВыделятьЖирным Тогда
Возврат;
КонецЕсли;
НоваяСтрока = ТаблицаДанныхЗаявленияНаПодключение.Добавить();
Если ТипЗнч(ИзмененныйРеквизит) = Тип("Строка") Тогда
НоваяСтрока.НазваниеРеквизита = ИзмененныйРеквизит;
Иначе
НоваяСтрока.ИзмененныйРеквизит = ИзмененныйРеквизит;
НоваяСтрока.НазваниеРеквизита = Строка(ИзмененныйРеквизит);
КонецЕсли;
НоваяСтрока.ЗначениеРеквизита = ЗначениеРеквизита;
НоваяСтрока.ВыделятьСтрокуЖирным = ВыделятьЖирным;
НоваяСтрока.ВыделятьСтрокуЖелтым = ВыделятьСтрокуЖелтым;
Если ЭтотПараметрИзменился = Неопределено Тогда
Если ЭтотПараметрИзменился(ИзмененныйРеквизит) Тогда
НоваяСтрока.ЭтотПараметрИзменился = Истина;
КонецЕсли;
Иначе
НоваяСтрока.ЭтотПараметрИзменился = ЭтотПараметрИзменился;
КонецЕсли;
НоваяСтрока.РазрешеноРедактирование = Ложь;
Если НомерСтроки = Неопределено Тогда
ПорядковыйНомерСтроки = ПорядковыйНомерСтроки + 1;
НоваяСтрока.ПорядковыйНомерСтроки = ПорядковыйНомерСтроки;
Иначе
НоваяСтрока.ПорядковыйНомерСтроки = НомерСтроки;
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура СформироватьТаблицуИзмененныхДанных()
Изменения = Перечисления.ПараметрыПодключенияК1СОтчетности;
ПорядковыйНомерСтроки = 0;
КонтекстЭДОСервер = ДокументооборотСКО.ПолучитьОбработкуЭДО();
ЭтоЗаявлениеТолькоНаПереход = КонтекстЭДОСервер.ЭтоЗаявлениеТолькоНаПереход(Объект.Ссылка);
ТаблицаДанныхЗаявленияНаПодключение.Очистить();
ДобавитьВТаблицу("Общие сведения", , , Истина);
КриптопровайдерИзменился = ЭтотПараметрИзменился(Изменения.ИзменениеКриптопровайдера);
ПереходВКоробку = ЭтотПараметрИзменился(Изменения.ПереходВКоробку);
ПереходВОблако = ЭтотПараметрИзменился(Изменения.ПереходВОблако);
Если КриптопровайдерИзменился И НЕ ПереходВОблако Тогда
Криптопровайдер = КриптографияЭДКОКлиентСервер.СвойстваКриптопровайдераПоУмолчанию(Объект.ТипКриптопровайдера);
ДобавитьВТаблицу(Изменения.ИзменениеКриптопровайдера, Криптопровайдер.Представление, КриптопровайдерИзменился);
КонецЕсли;
ИспользованиеСуществующегоСертификата = ЭтотПараметрИзменился(Изменения.ИспользованиеСуществующегоСертификата);
ДобавитьВТаблицу(Изменения.ИспользованиеСуществующегоСертификата, ИспользованиеСуществующегоСертификата);
ПереизданиеСертификата = ЭтотПараметрИзменился(Изменения.ПереизданиеСертификата);
ДобавитьВТаблицу(Изменения.ПереизданиеСертификата, ПереизданиеСертификата);
ПродлитьЛицензию = ЭтотПараметрИзменился(Изменения.ПродлениеЛицензии);
ДобавитьВТаблицу(Изменения.ПродлениеЛицензии, ПродлитьЛицензию, ПродлитьЛицензию);
Если ПереходВКоробку Тогда
ДобавитьВТаблицу(Изменения.ПереходВКоробку, ПереходВКоробку, ПереходВКоробку);
КонецЕсли;
Если ПереходВОблако Тогда
ДобавитьВТаблицу(Изменения.ПереходВОблако, ПереходВОблако, ПереходВОблако);
КонецЕсли;
Если (ПереходВОблако ИЛИ КриптографияЭДКОКлиентСервер.ЭтоПодписьСервиса(МестоХраненияКлюча))
И ЗначениеЗаполнено(Объект.СпособПодтвержденияКриптоопераций) Тогда
ЗаголовокПодтверждения = НСтр("ru = 'Подтверждать'");
Если Объект.СпособПодтвержденияКриптоопераций = Перечисления.СпособыПодтвержденияКриптоопераций.ДолговременныйТокен Тогда
ЗаголовокПодтверждения = НСтр("ru = 'Не подтверждать'");
КонецЕсли;
ДобавитьВТаблицу(Изменения.ПодтверждениеОперацийСКлючом, ЗаголовокПодтверждения);
КонецЕсли;
Если Объект.ЭтоМультиРежим ИЛИ Объект.ЭтоМультиРежимИсходный Тогда
ДобавитьВТаблицу("Сведения о пользователях", , , Истина);
ИзменилсяМультиРежим = ЭтотПараметрИзменился(Изменения.МультиРежим);
ДобавитьВТаблицу(
Изменения.МультиРежим,
Объект.ЭтоМультиРежим,
ИзменилсяМультиРежим);
ИзменилисьНастройки = ЭтотПараметрИзменился(Изменения.НастройкиПользователей);
Если ИзменилисьНастройки Тогда
ТаблицаПользователей = Объект.Ссылка.ПользователиУчетнойЗаписи.Выгрузить();
Представление = Мультирежим.ПредставлениеИзменившихсяНастроекПользователей(ЭтотОбъект, ТаблицаПользователей);
ДобавитьВТаблицу(
Изменения.НастройкиПользователей,
Представление,
ИзменилисьНастройки);
КонецЕсли;
КонецЕсли;
ДобавитьВТаблицу("Сведения об организации", , , Истина);
ДобавитьВТаблицу(Изменения.КраткоеНаименование, Объект.КраткоеНаименование);
ДобавитьВТаблицу(Изменения.ИНН, Объект.ИНН, Ложь);
ДобавитьВТаблицу(Изменения.КПП, Объект.КПП);
ДобавитьВТаблицу(Изменения.ОГРН, Объект.ОГРН);
ДобавитьВТаблицу(Изменения.РегНомерПФР, Объект.РегНомерПФР);
Если ИспользоватьРегНомерСФР Тогда
ДобавитьВТаблицу(Изменения.РегНомерСФР, Объект.РегНомерСФР);
КонецЕсли;
ЭтоАдресПоФИАСу = УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(Объект.АдресЮридический);
Если ЭтоАдресПоФИАСу Тогда
ПредставлениеАдреса = ОбработкаЗаявленийАбонента.ПредставлениеАдресаИзДанныхОрганизации(Объект.АдресЮридический);
ДобавитьВТаблицу(Изменения.АдресЮридический,ПредставлениеАдреса);
Область = ОбработкаЗаявленийАбонента.ПолеСертификата_2_5_4_8(Объект.АдресЮридический);
ДобавитьВТаблицу(Изменения.Область,Область);
Город = ОбработкаЗаявленийАбонента.ПолеСертификата_2_5_4_7(Объект.АдресЮридический);
ДобавитьВТаблицу(Изменения.Город,Город);
Улица = ОбработкаЗаявленийАбонента.ПолеСертификата_2_5_4_9(Объект.АдресЮридический);
ДобавитьВТаблицу(Изменения.Улица,Улица);
Иначе
ДобавитьВТаблицу(Изменения.АдресЮридический,
РегламентированнаяОтчетностьКлиентСервер.ПредставлениеАдресаВФормате9Запятых(Объект.АдресЮридический, Истина));
КонецЕсли;
ДобавитьВТаблицу(Изменения.КодРегионаФСРАР, Объект.КодРегионаФСРАР);
ДобавитьВТаблицу(Изменения.ТелефонОсновной, Объект.ТелефонОсновной);
ДобавитьВТаблицу(Изменения.ЭлектроннаяПочтаОрганизации, Объект.ЭлектроннаяПочтаОрганизации);
ДобавитьВТаблицу("Сведения о сотруднике - владельце электронной подписи", , , Истина);
ФИОВладельцаЭЦП = Объект.ВладелецЭЦПФамилия + " " + Объект.ВладелецЭЦПИмя + " " + Объект.ВладелецЭЦПОтчество;
ДобавитьВТаблицу(Изменения.ВладелецЭЦП, ФИОВладельцаЭЦП);
ДобавитьВТаблицу(Изменения.ВладелецЭЦПФИО, ФИОВладельцаЭЦП);
Если Объект.ТипОрганизации Тогда
ДобавитьВТаблицу(Изменения.ВладелецЭЦПДолжность, Объект.ВладелецЭЦПДолжность);
КонецЕсли;
ДобавитьВТаблицу(Изменения.ВладелецЭЦППодразделение, Объект.ВладелецЭЦППодразделение);
ДобавитьВТаблицу(Изменения.ВладелецЭЦПСНИЛС, Объект.ВладелецЭЦПСНИЛС);
Если Объект.ТипОрганизации Тогда
ДобавитьВТаблицу(Изменения.ВладелецЭЦПИНН, Объект.ВладелецЭЦПИНН);
КонецЕсли;
ДобавитьВТаблицу(Изменения.ВладелецЭЦПДатаРождения, Формат(Объект.ВладелецЭЦПДатаРождения, "ДЛФ=D"));
ДобавитьВТаблицу(Изменения.ВладелецЭЦППол, Объект.ВладелецЭЦППол);
ДобавитьВТаблицу(Изменения.ВладелецЭЦПГражданство, Объект.ВладелецЭЦПГражданство);
ДобавитьВТаблицу(Изменения.ВладелецЭЦПВидДокумента, Объект.ВладелецЭЦПВидДокумента);
ДобавитьВТаблицу(Изменения.ВладелецЭЦПСерияДокумента, Строка(Объект.ВладелецЭЦПСерияДокумента));
ДобавитьВТаблицу(Изменения.ВладелецЭЦПНомерДокумента, Строка(Объект.ВладелецЭЦПНомерДокумента));
ДобавитьВТаблицу(Изменения.ВладелецЭЦПКемВыданДокумент, Объект.ВладелецЭЦПКемВыданДокумент);
ДобавитьВТаблицу(Изменения.ВладелецЭЦПДатаВыдачиДокумента, Объект.ВладелецЭЦПДатаВыдачиДокумента);
ДобавитьВТаблицу(Изменения.ВладелецЭЦПМестоРождения, Объект.ВладелецЭЦПМестоРождения);
Если ЭлектронныйДокументооборотСКонтролирующимиОрганамиВызовСервера.ЭтоПаспортРФ(Объект.ВладелецЭЦПВидДокумента) Тогда
ДобавитьВТаблицу(Изменения.ВладелецЭЦПКодПодразделения, Объект.ВладелецЭЦПКодПодразделения);
КонецЕсли;
ДобавитьВТаблицу(Изменения.ТелефонМобильный, Объект.ТелефонМобильный);
ДобавитьВТаблицу(Изменения.ПолучатьСМСУведомления, Объект.ПолучатьСМСУведомления);
ДобавитьВТаблицу(Изменения.ЭлектроннаяПочта, Объект.ЭлектроннаяПочта);
Если КриптографияЭДКОКлиентСервер.ЭтоОблачнаяПодпись(МестоХраненияКлюча) Тогда
НастройкиОП = ОбработкаЗаявленийАбонентаКлиентСервер.СведенияОблачнойПодписиЗаявления(Объект);
Если НастройкиОП.ТребуетИзменения Тогда
ДобавитьВТаблицу(НСтр("ru = 'Настройки сервиса 1С:DSS'"),,,Истина);
КонецЕсли;
Если ЗначениеЗаполнено(НастройкиОП.Телефон) Тогда
ТелефонДляКодов = ЭлектроннаяПодписьВМоделиСервисаКлиентСервер.ПолучитьПредставлениеТелефона(НастройкиОП.Телефон);
ДобавитьВТаблицу(НСтр("ru = 'Изменить контакты для получения кодов'"), ТелефонДляКодов, Истина);
КонецЕсли;
Если НастройкиОП.ОтправкаКлючаМобильногоПриложения Тогда
ДобавитьВТаблицу(НСтр("ru = 'Получить QR-код и код активации'"), Истина, Истина);
КонецЕсли;
Если НастройкиОП.ОтправкаКодаАктивации Тогда
ДобавитьВТаблицу(НСтр("ru = 'Получить код активации'"), Истина, Истина);
КонецЕсли;
Если НастройкиОП.СменитьПароль Тогда
ДобавитьВТаблицу(НСтр("ru = 'Получить новый пароль от учетной записи 1С:DSS'"), Истина, Истина);
КонецЕсли;
Если НастройкиОП.СменитьКлючМобильногоПриложения ИЛИ НастройкиОП.СменитьКлючМобильногоПриложенияАвтоматически Тогда
ДобавитьВТаблицу(НСтр("ru = 'Получить новый ключ в мобильном приложении'"), Истина, Истина);
КонецЕсли;
Если ЗначениеЗаполнено(НастройкиОП.НовыйЛогин) И НастройкиОП.СоздатьУчетнуюЗапись Тогда
ДобавитьВТаблицу(НСтр("ru = 'Новый логин учетной записи 1С:DSS'"), НастройкиОП.НовыйЛогин, Истина);
КонецЕсли;
КонецЕсли;
Если НЕ ЭтоЗаявлениеТолькоНаПереход Тогда
ДобавитьВТаблицу("Сведения о контролирующих органах", , , Истина);
СтрокиСФНС = Объект.Получатели.НайтиСтроки(Новый Структура("ТипПолучателя", Перечисления.ТипыКонтролирующихОрганов.ФНС));
СдаватьВФНС = СтрокиСФНС.Количество() > 0;
ДобавитьВТаблицу(Изменения.СдаватьВФНС, СдаватьВФНС);
Если СдаватьВФНС Тогда
КодыФНСПрописью = ОбработкаЗаявленийАбонентаКлиентСервер.ПолучитьКодыФНСПрописью(СтрокиСФНС);
ДобавитьВТаблицу(Изменения.КодыФНС, КодыФНСПрописью);
Иначе
ДобавитьВТаблицу(Изменения.КодыФНС, "", Ложь);
КонецЕсли;
СтрокиСПФР = Объект.Получатели.НайтиСтроки(Новый Структура("ТипПолучателя", Перечисления.ТипыКонтролирующихОрганов.ПФР));
СтрокиСФСС = Объект.Получатели.НайтиСтроки(Новый Структура("ТипПолучателя", Перечисления.ТипыКонтролирующихОрганов.ФСС));
СдаватьВПФР = СтрокиСПФР.Количество() > 0;
СдаватьВФСС = СтрокиСФСС.Количество() > 0;
ДобавитьВТаблицу(Изменения.СдаватьВПФР, СдаватьВПФР ИЛИ СдаватьВФСС);
Если СдаватьВПФР Тогда
ДобавитьВТаблицу(Изменения.КодПФР, СтрокиСПФР[0].КодПолучателя);
Иначе
ДобавитьВТаблицу(Изменения.КодПФР, "", Ложь);
КонецЕсли;
СтрокиСРосстат = Объект.Получатели.НайтиСтроки(Новый Структура("ТипПолучателя", Перечисления.ТипыКонтролирующихОрганов.ФСГС));
СдаватьВРосстат = СтрокиСРосстат.Количество() > 0;
ДобавитьВТаблицу(Изменения.СдаватьВРосстат, СдаватьВРосстат);
Если СдаватьВРосстат Тогда
КодыРосстатПрописью = ОбработкаЗаявленийАбонентаКлиентСервер.ПолучитьКодыРосстатПрописью(СтрокиСРосстат);
ДобавитьВТаблицу(Изменения.КодРосстата, КодыРосстатПрописью);
Иначе
ДобавитьВТаблицу(Изменения.КодРосстата, "");
КонецЕсли;
СдаватьВФСРАР = Объект.ПодатьЗаявкуНаСертификатДляФСРАР;
ДобавитьВТаблицу(Изменения.СдаватьВФСРАР, СдаватьВФСРАР);
СдаватьВРПН = Объект.ПодатьЗаявкуНаПодключениеРПН;
ДобавитьВТаблицу(Изменения.СдаватьВРПН, СдаватьВРПН);
СдаватьВФТС = Объект.ПодатьЗаявкуНаПодключениеФТС;
ДобавитьВТаблицу(Изменения.СдаватьВФТС, СдаватьВФТС);
Если ДокументооборотСКОКлиентСервер.ПодсистемаЦБСуществует() Тогда
СтрокиСЦБ = Объект.Получатели.НайтиСтроки(
Новый Структура("ТипПолучателя", Перечисления.ТипыКонтролирующихОрганов.ЦБ));
СдаватьВЦБ = СтрокиСЦБ.Количество() > 0;
ДобавитьВТаблицу(Изменения.СдаватьВЦБ, СдаватьВЦБ);
КонецЕсли;
Если Объект.ПодключитьЭДО Тогда
ДобавитьВТаблицу("Подключение к сервису 1С-ЭДО",,,Истина);
ДобавитьВТаблицу("Подключиться к сервису 1С-ЭДО", Истина, Истина);
КонецЕсли;
Если Объект.ПереиздатьСертификатЭДО Тогда
ДобавитьВТаблицу("Обновление сертификата 1С-ЭДО",,,Истина);
ДобавитьВТаблицу("Обновить сертификат 1С-ЭДО", Истина, Истина);
КонецЕсли;
КонецЕсли;
ДобавитьЖелтыеСтроки();
КонецПроцедуры
&НаСервере
Функция ЭтотПараметрИзменился(ИзмененныйРеквизит)
СтруктураПоиска = Новый Структура("ИзмененныйРеквизит", ИзмененныйРеквизит);
Возврат Объект.ИзменившиесяРеквизитыВторичногоЗаявления.НайтиСтроки(СтруктураПоиска).Количество() > 0;
КонецФункции
&НаКлиенте
Процедура ПоказатьПриглашения(Команда)
Парам = Новый Структура;
Отбор = Новый Структура;
Отбор.Вставить("УчетнаяЗапись", КонтекстЭДОКлиент.УчетнаяЗаписьОрганизации(Объект.Организация));
Отбор.Вставить("Заявление", Объект.Ссылка);
Парам.Вставить("Отбор", Отбор);
ОткрытьФорму("РегистрСведений.ПриглашенияПользователей1СОтчетности.ФормаСписка", Парам);
КонецПроцедуры
&НаКлиенте
Процедура ТаблицаДанныхЗаявленияНаПодключениеВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
Если Элемент.ТекущиеДанные = Неопределено Тогда
Возврат;
КонецЕсли;
Если Элемент.ТекущиеДанные.НазваниеРеквизита <> Строка(ПредопределенноеЗначение("Перечисление.ПараметрыПодключенияК1СОтчетности.НастройкиПользователей")) Тогда
Возврат;
КонецЕсли;
МультирежимКлиент.ОткрытьПраваПользователей(ЭтотОбъект);
КонецПроцедуры
&НаСервере
Функция ПараметрыФормыПользователи() Экспорт
ПараметрыФормы = Мультирежим.ШаблонПараметровФормыПользователи();
Результат = Новый Структура(ПараметрыФормы);
ЗаполнитьЗначенияСвойств(Результат, Объект);
Результат.Вставить("ПараметрыФормы", ПараметрыФормы);
Таблица = МультирежимКлиентСервер.ТаблицаПользователей(Объект.Ссылка);
АдресТаблицы = ПоместитьВоВременноеХранилище(Таблица, Новый УникальныйИдентификатор);
Результат.Вставить("АдресТаблицы", АдресТаблицы);
Результат.Вставить("ВсеГосОрганыУчетнойЗаписи", Мультирежим.ВсеГосОрганыУчетнойЗаписи(Объект.Ссылка));
Результат.Вставить("ТипЗаявления", Перечисления.ТипыЗаявленияАбонентаСпецоператораСвязи.Изменение);
Результат.Вставить("ПоддерживаетсяМультирежим", Истина);
Результат.Вставить("ЗапретитьИзменение", Истина);
Возврат Результат;
КонецФункции
&НаСервере
Процедура ИнициализироватьВыводСтатусовИВажныхСообщений_85()
Если РегламентированнаяОтчетность.ДоступнаПодсистема85() Тогда
МодульЭДОСКонтролирующимиОрганами = ОбщегоНазначения.ОбщийМодуль("ЭлектронныйДокументооборотСКонтролирующимиОрганами");
МодульЭДОСКонтролирующимиОрганами.УстановитьРазмещениеНаименованияЭтапаБРО_85(ЭтотОбъект);
МодульЭДОСКонтролирующимиОрганами.ВывестиСтатусыИВыжныеСообщенияНаФорму_85(ЭтотОбъект);
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура ВывестиСтатусыИВыжныеСообщенияНаФормуНаСервере() Экспорт
Если РегламентированнаяОтчетность.ДоступнаПодсистема85() Тогда
МодульЭДОСКонтролирующимиОрганами = ОбщегоНазначения.ОбщийМодуль("ЭлектронныйДокументооборотСКонтролирующимиОрганами");
МодульЭДОСКонтролирующимиОрганами.ВывестиСтатусыИВыжныеСообщенияНаФорму_85(ЭтотОбъект);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ДетальноеОписаниеСтатусаПослеВыбора(Результат, ДополнительныеПараметры) Экспорт
Если Результат = Неопределено Тогда
Возврат;
КонецЕсли;
Если Результат = "ОбновитьОтправку" Тогда
ОбновитьОтправку(Неопределено);
ИначеЕсли Результат = "ГиперссылкаПротокол" Тогда
ГиперссылкаПротоколНажатие(Неопределено);
ИначеЕсли Результат = "ЭтапыОтправки" Тогда
ЭтапыОтправкиНажатие(Неопределено);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ВывестиСтатусыИВыжныеСообщенияНаФорму() Экспорт
ВывестиСтатусыИВыжныеСообщенияНаФормуНаСервере();
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ОбработкаНажатияКнопкиВВажномСообщении(Команда)
Если Команда.Имя = "ОтправитьНеотправленноеИзвещение" Тогда
ОтправитьНеотправленноеИзвещение(Неопределено);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ОбработкаНавигационнойСсылкиВВажномСообщении(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
Если НРег(НавигационнаяСсылкаФорматированнойСтроки) = "критическиеошибки" Тогда
КритическиеОшибкиОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка);
ИначеЕсли НРег(НавигационнаяСсылкаФорматированнойСтроки) = "отправьте" Тогда
ПодсказкаПФРОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ОбработкаЗакрытияВажногоСообщения(Команда)
МодульКлиентСервер = ОбщегоНазначенияКлиент.ОбщийМодуль("ЭлектронныйДокументооборотСКонтролирующимиОрганамиКлиентСервер");
МодульКлиентСервер.ЗакрытьВажноеСообщение(ЭтотОбъект, Команда.Имя);
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ОбработатьДействиеИнформационногоСообщения(ЭлементИлиКоманда, НавигационнаяСсылка = Неопределено, СтандартнаяОбработка = Неопределено)
МодульОбщегоНазначенияКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОбщегоНазначенияКлиент");
МодульОбщегоНазначенияКлиент.ОбработатьДействиеИнформационногоСообщения(ЭтотОбъект, ЭлементИлиКоманда, НавигационнаяСсылка, СтандартнаяОбработка);
КонецПроцедуры
#КонецОбласти