Документооборот с контролирующими органами / Форма выбора декларации по НДС / Модуль формы

файл
&НаКлиенте
Перем КонтекстЭДОКлиент;

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

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
	
	// Пропускаем инициализацию, чтобы гарантировать получение формы при передаче параметра "АвтоТест".
	Если Параметры.Свойство("АвтоТест") Тогда
		Возврат;
	КонецЕсли;
	
	Организация = Параметры.Организация;
	
	СформироватьТаблицу();
	
КонецПроцедуры

&НаКлиенте
Процедура ПриОткрытии(Отказ)
	
	ОписаниеОповещения = Новый ОписаниеОповещения("ПриОткрытииЗавершение", ЭтотОбъект);
	ДокументооборотСКОКлиент.ПолучитьКонтекстЭДО(ОписаниеОповещения);
	
КонецПроцедуры

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

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

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

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

&НаКлиенте
Процедура ОтчетыВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
	
	Если Элементы.Отчеты.ТекущиеДанные <> Неопределено Тогда 
		
		Если Поле.Имя = "ОтчетыСостояние" Тогда 
			
			СтандартнаяОбработка = Ложь;
			КонтекстЭДОКлиент.ПоказатьФормуСтатусовОтправки(Элементы.Отчеты.ТекущиеДанные.Отчет);
			
		Иначе
			
			СтандартнаяОбработка = Ложь;
			ПоказатьЗначение(, Элементы.Отчеты.ТекущиеДанные.Отчет);

		КонецЕсли;
		
	КонецЕсли;
	
КонецПроцедуры

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

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

&НаКлиенте
Процедура Выбрать(Команда)
	Если Элементы.Отчеты.ТекущиеДанные = Неопределено Тогда 
		Закрыть();
	Иначе
		Закрыть(Элементы.Отчеты.ТекущиеДанные.Отчет);
	КонецЕсли;
КонецПроцедуры

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

#Область СлужебныеПроцедурыИФункции

&НаКлиенте
Процедура ПриОткрытииЗавершение(Результат, ДополнительныеПараметры) Экспорт
	
	КонтекстЭДОКлиент = Результат.КонтекстЭДО;

КонецПроцедуры

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

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




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