Упаковки и единицы измерения / Единицы для отчетов / Модуль формы

файл

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

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
	
	Если Параметры.Свойство("АвтоТест") Тогда
		Возврат;
	КонецЕсли;
	
	Если Параметры.НаборУпаковок = Справочники.НаборыУпаковок.ИндивидуальныйДляНоменклатуры Тогда
		Владелец = Параметры.Номенклатура;
	Иначе
		Владелец = Параметры.НаборУпаковок;
	КонецЕсли;
	
	ТекстЗапроса = СписокУпаковки.ТекстЗапроса;
	ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ТекстЗапросаКоэффициентУпаковки1",
								Справочники.УпаковкиЕдиницыИзмерения.ТекстЗапросаКоэффициентаУпаковки(
									"УпаковкиНоменклатурыПереопределяемый",
									Неопределено));
	ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ТекстЗапросаКоэффициентУпаковки2",
								Справочники.УпаковкиЕдиницыИзмерения.ТекстЗапросаКоэффициентаУпаковки(
									"УпаковкиПереопределяемый",
									Неопределено));
	
	СвойстваСписка = ОбщегоНазначения.СтруктураСвойствДинамическогоСписка();
	СвойстваСписка.ТекстЗапроса					= ТекстЗапроса;
	СвойстваСписка.ОсновнаяТаблица				= "Справочник.УпаковкиЕдиницыИзмерения";
	СвойстваСписка.ДинамическоеСчитываниеДанных	= Истина;
	
	ОбщегоНазначения.УстановитьСвойстваДинамическогоСписка(Элементы.СписокУпаковки, СвойстваСписка);
	
	ОбщегоНазначенияКлиентСервер.УстановитьПараметрДинамическогоСписка(СписокУпаковки, "Владелец", Владелец, Истина);
	
	Элементы.СписокУпаковкиКоэффициент.Заголовок =
		СтрЗаменить(Элементы.СписокУпаковкиКоэффициент.Заголовок, "%1%", Строка(Параметры.ЕдиницаХранения));
		
	Элементы.СписокУпаковки.ТекущаяСтрока = Параметры.ЕдиницаДляОтчетов;

	СобытияФорм.ПриСозданииНаСервере(ЭтаФорма, Отказ, СтандартнаяОбработка);

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

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

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

&НаКлиенте
Процедура Подключаемый_ВыполнитьПереопределяемуюКоманду(Команда)
	
	СобытияФормКлиент.ВыполнитьПереопределяемуюКоманду(ЭтаФорма, Команда);
	
КонецПроцедуры

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

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