Производство без заказа / Выбор группы затрат / Модуль формы

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

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
	
	Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа.
		Возврат;
	КонецЕсли;
	
	ОтображатьДавальцаВГруппеЗатрат = Параметры.ОтображатьДавальцаВГруппеЗатрат;
	
	СписокПолей = Документы.ПроизводствоБезЗаказа.ПереченьПолейГруппыЗатрат(Параметры.ГруппировкаЗатрат);
	
	ЗаголовокГруппыЗатрат = "";
	Для Каждого ТекПоле Из СписокПолей Цикл
		
		Если ЗначениеЗаполнено(ТекПоле.Представление) Тогда
			
			
			ЗаголовокГруппыЗатрат = ЗаголовокГруппыЗатрат + ТекПоле.Представление + " / ";
			
		КонецЕсли;
		
	КонецЦикла;
	
	Если ЗначениеЗаполнено(ЗаголовокГруппыЗатрат) Тогда
		ЗаголовокГруппыЗатрат = Лев(ЗаголовокГруппыЗатрат, СтрДлина(ЗаголовокГруппыЗатрат) - 3);
		ЗаголовокГруппыЗатрат = НСтр("ru = 'Группа затрат'") + " (" + ЗаголовокГруппыЗатрат + ")";
	Иначе
		ЗаголовокГруппыЗатрат = НСтр("ru = 'Группа затрат'");
	КонецЕсли;
	
	Элементы.СписокГруппГруппаЗатрат.Заголовок = ЗаголовокГруппыЗатрат;
	
	СписокГрупп.Загрузить(ПолучитьИзВременногоХранилища(Параметры.АдресХранилищаГруппЗатрат));
	
	Для Каждого СтрокаГруппа Из СписокГрупп Цикл
		
		Если Параметры.НомерГруппыЗатрат = СтрокаГруппа.НомерГруппыЗатрат Тогда
			Элементы.СписокГрупп.ТекущаяСтрока = СтрокаГруппа.ПолучитьИдентификатор();
		КонецЕсли;
		
	КонецЦикла;
	
КонецПроцедуры

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

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

&НаКлиенте
Процедура СписокГруппВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
	
	ОбработатьВыборГруппы();
	
КонецПроцедуры

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

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

&НаКлиенте
Процедура ВыбратьГруппу(Команда)
	
	ОбработатьВыборГруппы();
	
КонецПроцедуры

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

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

&НаКлиенте
Процедура ОбработатьВыборГруппы()

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

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

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

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