Сортировка в виде

  • Автор темы I123321
  • Дата начала
I

I123321

Гость
#1
В виде сортирую колонку Номер. Сортирирую колонку и получается, что вначале идут документы 1, 11, 12..... , 2, 21,22... А надо чтобы шли документы 1,2,3,... , 10, 11, 12...
Как это сделать?
 

morpheus

скриптописец
07.08.2006
3 915
1
34
Украина, Киев
#2
или значение не номер... а текст, тогда приводите к формату 001 002 003

или

приводите текст в @TextToNumber
 
I

I123321

Гость
#3
попробовал @TextToNumber. Получается если номер был 12/25/3, тогда просто отображается 12
 
K

Klido

Гость
#4
эээ, а КАК вообще представляете сортировку таких номеров??? :)

1. унифицировать формат номера (в данном случае - 3 позиции по 2 цифры с разделителями)
2. разобрать формат и сортировать как надо.
 

nvyush

Well-Known Member
Lotus team
22.04.2009
2 317
0
48
Подмосковье
#8
попробовал @TextToNumber. Получается если номер был 12/25/3, тогда просто отображается 12
Делаем скрытый столбец с @TextToNumber для сортировки, а рядом видимый столбец с реальными номерами.
Номера вида 12/25/3 с целью сортировки можно преобразовывать во что-нибудь вида 12025.003 в зависимости от диапазона каждой из составляющих, например:
val := "12/25/3";
@TextToNumber(@Word(val; "/"; 1)) * 1000 + @TextToNumber(@Word(val; "/"; 2)) + @TextToNumber(@Word(val; "/"; 3)) / 1000
 
I

I123321

Гость
#10
сделал так:
скрытую колонку
Код:
val := Number;
@TextToNumber(@Subset(@Explode(val; "/"); 1))
все работает
Но теперь проблема в том, что сама по себе колонка Номер имеет сортировку Both и при сортировки этой колонки опять отображается не верно
 

nvyush

Well-Known Member
Lotus team
22.04.2009
2 317
0
48
Подмосковье
#11
сделал так:
скрытую колонку
Код:
val := Number;
@TextToNumber(@Subset(@Explode(val; "/"); 1))
все работает
Но теперь проблема в том, что сама по себе колонка Номер имеет сортировку Both и при сортировки этой колонки опять отображается не верно
Надо убрать возможность выбирать порядок сортировки по данному столбцу. Вообще-то гуру советуют не злоуботр*цензура*ть такой возможностью - от этого сильно пухнет индекс вида.
Кстати, @TextToNumber(@Word(val; "/"; 1)) короче и считает, наверное, быстрее
 
I

I123321

Гость
#13
почти. Просто в начале не со скрытым столбцом игрался и поэтому @TextToNumber(val) не подощло. А теперь все работает. Но есть вот это но, что они все же хотят возможность сортировки по столбцу Номер

просто укажу еще разделитель "-", так как только что увидел, что и его используют

а можно ли как-то столбец Номер как-то отсортировать в зависимости от столбца, который скрыт?? :)
 

nvyush

Well-Known Member
Lotus team
22.04.2009
2 317
0
48
Подмосковье
#14
а можно ли как-то столбец Номер как-то отсортировать в зависимости от столбца, который скрыт?? :)
Нет (разве что в каком-нибудь самописном java-апплете). А вообще-то каждый дополнительный способ сортировки = дополнительный индекс вида. Не надо баловать юзеров, они от этого портятся :D.