Имя: Пароль:
1C
1С v8
v8: Не пойму как работает сортировка
0 askharlov
 
18.03.13
16:33
1. Формирую таблицу (ТаблицаРезультатов). Вот ее упрощенный вариант (убрал лишние колонки):
Спортсмен          Место    Очки    МестоВФинале
РОМАНИШИН Тетяна    1    50    0
МЕРЦ Оксана            2    40    0
ГРЕЩУК Ірина            3    35    0
МАЛЬОВАНА Олександра    4    30    0
БУДА Уляна            5    25    0
ЗАДОРОЖНА Галина    6    20    0
КОПЧАК Тетяна            7    15    0
КУЛІКОВА Катерина    8    10    0
ВОВК Олеся            9    8    0
ГАЛАЙКО Олеся            10    5    0
ЗАСІБНА Анастасія    11    3    0
ПИЛЬНИК Розалія            12    2    0
ЧУПРЕЙ Анастасія    13        0
МАРКУЛИЧ Христина    14        0
ЗАХАРЧЕНКО Анастасія            0
НАЗАРЕНКО Дарина            0
ПОГАНЬ Елеонора            0

2. Сортирую эту таблицу:
ТаблицаРезультатов.Сортировать("МестоВФинале Возр");

Получаю результат:
Спортсмен           Место    Очки    МестоВФинале
ПОГАНЬ Елеонора                    0
НАЗАРЕНКО Дарина            0
ЗАХАРЧЕНКО Анастасія            0
МАРКУЛИЧ Христина    14        0
ЧУПРЕЙ Анастасія    13        0
ПИЛЬНИК Розалія            12    2    0
ЗАСІБНА Анастасія    11    3    0
ГАЛАЙКО Олеся            10    5    0
ВОВК Олеся            9    8    0
КУЛІКОВА Катерина    8    10    0
КОПЧАК Тетяна            7    15    0
ЗАДОРОЖНА Галина    6    20    0
БУДА Уляна            5    25    0
МАЛЬОВАНА Олександра    4    30    0
ГРЕЩУК Ірина            3    35    0
МЕРЦ Оксана            2    40    0
РОМАНИШИН Тетяна    1    50    0

Не могу понять почему таблица "переворачивается"? По моему разумению, так как место в финале в данном случае у всех равно 0, то таблица вообще должна оставаться при сортировке нетронутой.

П.С.: В других документах она действительно остается нетронутой. Т.е. в одних документах не "переворачивается", а в других - переворачивается.

Кто понимает что происходит, помогите, пож-та???
1 GLazNik
 
18.03.13
16:36
Может для того, что бы исключить неясность, добавить дополнительные поля для сортировки?
2 acsent
 
18.03.13
16:37
порядок сортировки не одинаковых полей не гарантируется
3 askharlov
 
18.03.13
16:38
(1)Как решить проблему понимаю. Но в данном случае у меня сортировка всего одной строчкою, а так необходимо писать кусок кода.
Интересно понять, почему не работает то, как в 0
2 Не одинаковые поля это какие? "Место в финале" всегда числовое
4 GLazNik
 
18.03.13
16:52
(3) а почему оно должно работать как в 0? Вызвав "Сортировать"  была потеряна исходный порядок строк (что логично).
5 askharlov
 
18.03.13
16:57
Уже исправил проблему переписав код (использую в цикле Сдвинуть).
Но что за исходный порядок строк, извините: не понимаю :-)
6 askharlov
 
18.03.13
16:57
В моем пониманию 1С должна сортировать подобно Экселю. Эксель в данном случае отработал бы корректно
7 Ёпрст
 
18.03.13
16:58
(0) колонка хоть типизирована ?
8 askharlov
 
18.03.13
17:00
Нет, не типизирована.
В этом может и заклюачться проблема?
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший