|
Сортировка структурного кода | ☑ | ||
---|---|---|---|---|
0
ddok
06.07.21
✎
12:04
|
Здравствуйте.
Подкиньте, пожалуйста, идею сортировки (по возрастанию/убыванию) структурного кода вида "1.2.3". 1С подобный код (строковый тип) не совсем правильно сортирует, например по возрастанию: 1.01.01 1.02.3 1.1.3 1.11.1 1.2.11 а должно быть: 1.01.01 1.1.3 1.02.3 1.2.11 1.11.1 |
|||
1
mikecool
06.07.21
✎
12:06
|
(0) вопрос - а кто, кроме 1с, сортирует так, как надо?
имхо - никто |
|||
2
ДенисЧ
06.07.21
✎
12:06
|
Разбери в ТЗ с преобразованием к числу, сортируй, собирай обратно
|
|||
3
ДенисЧ
06.07.21
✎
12:06
|
(1) Все, кому надо ))
|
|||
4
mikecool
06.07.21
✎
12:06
|
надо приводить код к такому виду, чтобы он мог сортироваться как надо
|
|||
5
Fragster
гуру
06.07.21
✎
12:10
|
за код 01 и 1 на одном уровне надо отрывать кое что кое кому
|
|||
6
Вафель
06.07.21
✎
12:11
|
храни реквизит для сортировка 001.001.001
|
|||
7
1Сергей
06.07.21
✎
12:12
|
переименовать вс 01 в 1, 02 в 2 и т.д.
Кто будет делать так и дальше - пальцы прищемить дверью |
|||
8
Вафель
06.07.21
✎
12:12
|
а кстати почему 02 < 1 ?
|
|||
9
ДенисЧ
06.07.21
✎
12:12
|
(8) По правилам сравнения строк ))
|
|||
10
Вафель
06.07.21
✎
12:21
|
(8) Это я подумал что должно быть так, а это как есть
|
|||
11
mikecool
06.07.21
✎
12:23
|
потом появится 01.01.1 и т.п.
|
|||
12
fisher
06.07.21
✎
12:29
|
(0) Для правильной сортировки тебе в любом случае придется приводить код к одинаковой длине частей с ведущими нулями. Если не хочешь делать это каждый раз при сортировке, то лучше это делать заранее. Например писать нормализованный структурный код в доп-реквизит, по которому и сортировать.
|
|||
13
Малыш Джон
06.07.21
✎
12:30
|
(0) если такая потребность возникает постоянно, то имеет смысл хранить параллельно нормированный код (по типу 1.02.03 -> 001.002.003) и сортировать по нему
|
|||
14
cathode
06.07.21
✎
12:38
|
(0) Можно сделать на встроенном языке.
Алгоритм называется "естественная сортировка" (natsort). То, что в 1С и вообще везде - это лексикографическая сортировка, существенно более простая в реализации. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |