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