Загрузка данных


	ЗаполнитьСериюИСрокУпаковок(Дерево.Строки);
	ЗначениеВРеквизитФормы(Дерево, "ДеревоНомераТранспортныхУпаковок");
КонецПроцедуры  

// Серия и срок годности транспортной упаковки в дереве - если у всех ее КИЗ они одинаковые, иначе пусто.
&НаСервере
Процедура ЗаполнитьСериюИСрокУпаковок(Строки)
	Для Каждого СтрокаДерева Из Строки Цикл
		Если СтрокаДерева.НаименованиеТЧ = "СоставКИЗТранспортныхУпаковок" Тогда
			Продолжить;
		КонецЕсли;
		ЗаполнитьСериюИСрокУпаковок(СтрокаДерева.Строки);
		Серии = Новый Массив;
		Сроки = Новый Массив;
		СобратьСерииИСрокиКИЗ(СтрокаДерева, Серии, Сроки);
		Если Серии.Количество() = 1 Тогда
			СтрокаДерева.Серия = Серии[0];
		КонецЕсли;
		Если Сроки.Количество() = 1 Тогда
			СтрокаДерева.ГоденДо = Сроки[0];
		КонецЕсли;
	КонецЦикла;
КонецПроцедуры

&НаСервере
Процедура СобратьСерииИСрокиКИЗ(СтрокаДерева, Серии, Сроки)
	Для Каждого Стр Из СтрокаДерева.Строки Цикл
		Если Стр.НаименованиеТЧ = "СоставКИЗТранспортныхУпаковок" Тогда
			Если Серии.Найти(Стр.Серия) = Неопределено Тогда
				Серии.Добавить(Стр.Серия);
			КонецЕсли;
			Если Сроки.Найти(Стр.ГоденДо) = Неопределено Тогда
				Сроки.Добавить(Стр.ГоденДо);
			КонецЕсли;
		Иначе
			СобратьСерииИСрокиКИЗ(Стр, Серии, Сроки);
		КонецЕсли;
	КонецЦикла;
КонецПроцедуры