Имя: Пароль:
1C
1С v8
Сортировать строки как числа
0 denis200
 
15.09.11
06:59
Есть список значений заполненные строковыми числами.
1 2 3 10 15 итд
каждое число это строка.
Если просто сортировать то будет
1
10
15
2
3
-----------
я хочу отсортировать эти строки как числа.
Как это сделать?
1 Нуф-Нуф
 
15.09.11
07:00
выгрузить в тз, добавить колонку с числами, отсортировать, выгрузить в сз
2 Kassius
 
15.09.11
07:08
Добей нолями до вида:
001
002
003
010
015
3 DJ Anthon
 
15.09.11
07:09
(2) для него сортировка - проблема, а ты его такими вещами грузишь ))
4 Рэйв
 
15.09.11
07:23
(0)Значения заполняй числами, а представление строками тогда спокойно отсортируешь
5 denis200
 
15.09.11
07:48
Массив = Новый Массив();
       Массив2 = Новый Массив();
       Для Каждого стр Из ПолеСписка1 Цикл
           Массив.Добавить(стр.Значение);
           Массив2.Добавить(Число(стр.Значение));
       КонецЦикла;
       ТЗ = Новый ТаблицаЗначений();
       ТЗ.Колонки.Добавить("Список");
       ТЗ.Колонки.Добавить("Числа");
       ТЗ.ЗагрузитьКолонку(Массив, "Список");
       ТЗ.ЗагрузитьКолонку(Массив2, "Числа");
6 denis200
 
15.09.11
07:48
Массив есть а в ТЗ что-то ничего нет
7 Азат
 
15.09.11
07:52
Массив = Новый Массив();
МаксДлина = -100;
Для Каждого стр Из ПолеСписка1 Цикл
  Массив.Добавить(стр.Значение);
  МаксДлина = Макс(МаксДлина, СтрДлина(Стр.Значение));
КонецЦикла;

Для К = 0 По Массив.Количество() - 1 Цикл
   Пока СтрДлина(Массив[К]) < МаксДлина Цикл
       Мас[К] = "0" + Мас[К];
   КонецЦикла;
КонецЦикла;
Основная теорема систематики: Новые системы плодят новые проблемы.