Документооборот с контролирующими органами / Протокол обработки HTML / Модуль формы

файл

#Область ОбработчикиСобытийФормы

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

#КонецОбласти

#Область ОбработчикиСобытийЭлементовШапкиФормы

&НаКлиенте
Процедура HTMLТекстПриНажатии(Элемент, ДанныеСобытия, СтандартнаяОбработка)
	
	Ссылка = Неопределено;
	Попытка
		Ссылка = СокрЛП(нрег(ДанныеСобытия.Element.innerText));
		Если Лев(Ссылка, 7) <> "http://" И Лев(Ссылка, 8) <> "https://" Тогда
			Ссылка = Неопределено;
		КонецЕсли;
	Исключение
	КонецПопытки;
	
	Если ЗначениеЗаполнено(Ссылка) Тогда
		ПерейтиПоНавигационнойСсылке(Ссылка);
	КонецЕсли;
	
КонецПроцедуры

&НаКлиенте
Процедура УведомленияОРазмереСтраховыхВзносовНажатие(Элемент)
	
	ТипыСЭДО = ДокументооборотСФССКлиентСервер.ТипыСообщенийСЭДО();
	ТипУведомления = ТипыСЭДО.ТипСообщенияУведомлениеОРазмереСтраховыхВзносов; // тип 31.
	
	ПараметрыОтбора = Новый Структура("Тип, Организация", ТипУведомления, Организация);
	ПараметрыФормы = Новый Структура("Отбор", ПараметрыОтбора);
	ОткрытьФорму("РегистрСведений.ВходящиеСообщенияСЭДОФСС.ФормаСписка", ПараметрыФормы);
	
КонецПроцедуры

#КонецОбласти

#Область ОбработчикиКомандФормы

&НаКлиенте
Процедура Печать(Команда)
	
	Элементы.HTMLТекст.Документ.execCommand("Print");
	
КонецПроцедуры

#КонецОбласти

Связанные материалы