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