// создадим тестовый массив с повторяющимися значениями: &НаКлиенте Процедура СоздатьМассив(Команда) Массив = Новый Массив; Массив.Добавить(1); Массив.Добавить(1); Массив.Добавить(1); Массив.Добавить(2); Массив.Добавить(2); Массив.Добавить(3); Массив.Добавить(4); Массив.Добавить(5); Массив.Добавить(6); Массив.Добавить(6); // удалим дубли (код функции ниже): МассивБезДублей = УбратьДублиИзМассива(Массив); // получим наглядное представление отсутствия дублей Для каждого Элемент Из МассивБезДублей Цикл Сообщить(Элемент); КонецЦикла; КонецПроцедуры // функция по удалению дублей: // передаем массив с дублями, возвращаем без дублей &НаСервере Функция УбратьДублиИзМассива(Массив) Экспорт ИндексТекущегоЭлемента = 0; ВсегоЭлементов = Массив.Количество(); Пока ИндексТекущегоЭлемента < ВсегоЭлементов Цикл ИндексСледующегоЭлемента = ИндексТекущегоЭлемента + 1; Пока ИндексСледующегоЭлемента < ВсегоЭлементов Цикл Если Массив[ИндексСледующегоЭлемента] = Массив[ИндексТекущегоЭлемента] Тогда Массив.Удалить(ИндексСледующегоЭлемента); ВсегоЭлементов = ВсегоЭлементов - 1; Иначе ИндексСледующегоЭлемента = ИндексСледующегоЭлемента + 1; КонецЕсли; КонецЦикла; ИндексТекущегоЭлемента = ИндексТекущегоЭлемента + 1; КонецЦикла; Возврат Массив; КонецФункции
ТЗ = Новый ТаблицаЗначений;
ТЗ.Колонки.Добавить («К»);
Для с=1 по Массив. Количество () Цикл
ТЗ. Добавить ();
КонецЦикла;
ТЗ. ЗагрузитьКолонку (Массив,"К");
ТЗ. Свернуть («К»);
Массив = ТЗ. ВыгрузитьКолонку («К»);