Поиск дублей в табличной части

&НаСервере
Функция ПроверитьВозможностьРаспределения()
	СтрокаСообщение = "";
	ОтказРаспределения = Ложь;
	СтруктураВозврата = Новый Структура("Сообщение, Отказ", "", ОтказРаспределения);
	Если Объект.Товары.Итог("Количество") > Объект.Вместимость.Итог("Количество") Тогда
		СтрокаСообщение = СтрокаСообщение + "Недостаточная вместимость выбранных вагонов";
		ОтказРаспределения = Истина;
	КонецЕсли;
	//
	ТЗВременно = Объект.Вместимость.Выгрузить(); // Имя табличной части
    ТЗВременно.Колонки.Добавить("Дубли");
    ТЗВременно.ЗаполнитьЗначения(1,"Дубли");
    ТЗВременно.Свернуть("Вагон","Дубли");
	Если ТЗВременно.Количество() < Объект.Вместимость.Количество() Тогда // дубли есть
		СтрокаСообщение = СтрокаСообщение + "; Есть дубли вагонов: ";
		Для Каждого Строка из ТЗВременно Цикл
			Если Строка.Дубли > 1 Тогда
				СтрокаСообщение = СтрокаСообщение + Строка.Вагон + ", ";	
			КонецЕсли;
		КонецЦикла;
		ОтказРаспределения = Истина;
	КонецЕсли;
	//
	СтруктураВозврата.Вставить("Сообщение",СтрокаСообщение);
	СтруктураВозврата.Вставить("Отказ", ОтказРаспределения); 
	Возврат СтруктураВозврата;
КонецФункции