Данные по контрагентам контролируемых сделок / Форма списка / Модуль формы

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

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

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

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

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

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

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