|
Багофича. Будьте бдительны с сортировкой ТаблицыЗначений |
☑ |
0
miklenew
12.02.14
✎
11:00
|
Наткнулся тут на одну неприятную штуку, сортировка таблицы значений была неправильной. Решил предупредить тех, кто раньше как и я не обращал внимание на это.
Сортирует по строковому представлению
ТаблицаЗначений.Сортировать("Номенклатура");
сортирует по внутреннему идентификатору
ТаблицаЗначений.Сортировать("Номенклатура", Новый СравнениеЗначений);
|
|
1
PiVa123
12.02.14
✎
11:02
|
Тип: СравнениеЗначений.
Объект для сравнения значений. Независимо от того, задан объект сравнения или нет, элементы, чьи типы не совпадают, сравниваются по коду типа, а элементы простых типов сравниваются по значению. Дополнительно к этому:
если объект сравнения не задан, то элементы остальных типов сравниваются по строковому представлению;
если объект сравнения задан, то:
объекты сравниваются по идентификатору;
моменты времени сравниваются по дате и идентификатору объекта;
элементы остальных типов сравниваются по строковому представлению
|
|
2
Господин ПЖ
12.02.14
✎
11:03
|
чтение СП - приводит к багофичам...
|
|
3
miklenew
12.02.14
✎
11:05
|
Лучше б сделали наоборот, по умолчанию по внутреннему айди, а кто хочет изврата по строковому представлению.
|
|
4
dmpl
12.02.14
✎
11:07
|
(3) Чем же лучше? Юзеры бы жаловались "Что за хрень?!!! Я сортирую - а не сортируется!!!"
|
|
5
MSII
12.02.14
✎
11:08
|
Вот именно. Ты для кого ТЗ сортируешь - для себя или для пользователя? :)
|
|
6
qeos
12.02.14
✎
11:09
|
(3) я против)
|
|
7
Maxus43
12.02.14
✎
11:10
|
да дело даже не в ТЗ... Юзер вот в СКД свою сортировку добавит по номенклатуре - а оно раз, и в кашу превратится
|
|
8
Serginio1
12.02.14
✎
11:31
|
|
|
9
mdocs
12.02.14
✎
11:34
|
Все правильно. Какой вообще смысл в сортировке по внутреннему идентификатору.
|
|
10
Serginio1
12.02.14
✎
11:51
|
(9) Смотри 8. Смысл в том, что элементы справочника с одинаковыми наименованиями будут перемешаны, а не идти друг за другом.
Это касается случаев когда в ТЗ содержаться несколько записей по одному элементу.
|
|
11
Сияющий Асинхраль
12.02.14
✎
12:03
|
(0) Вообще-то и в семерке по умолчанию нечто подобное было, так что ничего нового не открыл...
|
|
12
Serginio1
12.02.14
✎
13:35
|
(11) В семерке "*" нужно было добавлять для сортировки по внутреннему значению
|
|
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой