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