Сортировка цифр в поле String
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Сортировка цифр в поле String
Доброе время суток
Clarion 5.5 В файле DAT есть поле объявленное как String
в нём будет храниться информация о пунктах плана например:
1.1
1.2
1.3
1.4
Пока уровня всего 2 сортировка работает корректно, если добавляется 3 уровень то сортировка сбивается
1.1.1
1.1.10
1.1.11
1.1.2
1.1.3
1.1.4
Подскажите пожалуйста можно ли это исправить?
С уважением
Юрий
Clarion 5.5 В файле DAT есть поле объявленное как String
в нём будет храниться информация о пунктах плана например:
1.1
1.2
1.3
1.4
Пока уровня всего 2 сортировка работает корректно, если добавляется 3 уровень то сортировка сбивается
1.1.1
1.1.10
1.1.11
1.1.2
1.1.3
1.1.4
Подскажите пожалуйста можно ли это исправить?
С уважением
Юрий
-
- Бывалый
- Сообщения: 61
- Зарегистрирован: 12 Декабрь 2008, 12:09
- Откуда: Верхний Уфалей
- Контактная информация:
Сортировка цифр в поле String
сортировку не исправить, и в 2 уровнях она тоже слетит как только появятся значения десятков и более.
можно поправить ситуацию если форматировать числа, заранее определившись с рязрядностью уровней
то есть, к примеру, по 2 разряда на 2й и 3й уровень.
1.1.1 --> 1.01.01
1.1.2 --> 1.01.02
1.1.10 --> 1.01.10
1.1.11 --> 1.01.11
можно поправить ситуацию если форматировать числа, заранее определившись с рязрядностью уровней
то есть, к примеру, по 2 разряда на 2й и 3й уровень.
1.1.1 --> 1.01.01
1.1.2 --> 1.01.02
1.1.10 --> 1.01.10
1.1.11 --> 1.01.11
Сортировка цифр в поле String
Сортировку вы конечно же исправить не сможете, да она здесь и не виновата.
И, если ничего не менять в таблице, то ничего не получится.
Надо либо прибегнуть к тому, что сказал вам vd-vuf,
либо, если это смотрится как-то не хорошо,
такое поле иметь скрытым и не отображать его на экране, но после каждой модификации основного поля осуществлять его вычисление и сохранение, сделать по нему ключ и по нему-то сортировать записи. И, если это поле будет скрытым, то фантазия может разыграться, и вы сможете под каждый уровень отвести не по два, а по три, а ещё лучше четыре разряда.
И, если ничего не менять в таблице, то ничего не получится.
Надо либо прибегнуть к тому, что сказал вам vd-vuf,
либо, если это смотрится как-то не хорошо,
такое поле иметь скрытым и не отображать его на экране, но после каждой модификации основного поля осуществлять его вычисление и сохранение, сделать по нему ключ и по нему-то сортировать записи. И, если это поле будет скрытым, то фантазия может разыграться, и вы сможете под каждый уровень отвести не по два, а по три, а ещё лучше четыре разряда.
-
- ✯ Ветеран ✯
- Сообщения: 4960
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 6 раз
- Поблагодарили: 19 раз
Сортировка цифр в поле String
А какое поле? Тоже стринговое? Только с другим форматированием?Shur писал(а):Надо либо прибегнуть к тому, что сказал вам vd-vuf,
либо, если это смотрится как-то не хорошо,
такое поле иметь скрытым и не отображать его на экране, но после каждой модификации основного поля осуществлять его вычисление и сохранение, сделать по нему ключ и по нему-то сортировать записи. И, если это поле будет скрытым, то фантазия может разыграться, и вы сможете под каждый уровень отвести не по два, а по три, а ещё лучше четыре разряда.
На мой взгляд, здесь классическое дерево по одной таблице. Вариант - либо вести её как дерево. Либо иметь поля Long для каждого уровня, сортировать по этим полям. а для удобства заполнять их вскрытую, делая разбор строки в момент записи.
We are hard at work… for you.
Сортировка цифр в поле String
Так не очень -- ты сразу ограничиваешь себя этим количеством уровней. Плюс имеешь головняк с перенумерацией, если нужно что-то вставить в середину.
Да, я бы завёл так. Назовём его скрытое стринговое поле с разрядным форматированием.
Понятно, что это иерархия. Понятно, что по одной таблице. Но список как-то легче построить, отсортировав по полю, нежели рекурсивно искать сыновей-родителей.
- Губин Игорь
- ✯ Ветеран ✯
- Сообщения: 2301
- Зарегистрирован: 16 Сентябрь 2005, 16:35
- Откуда: Москва
- Поблагодарили: 17 раз
Сортировка цифр в поле String
Sort(queue,function)
Или ввести в файл некое числовое поле, в которое будет ПРАВИЛЬНО записываться индекс
Или ввести в файл некое числовое поле, в которое будет ПРАВИЛЬНО записываться индекс
Это я только кажусь дураком! На самом деле я полный идиот!
-
- ✯ Ветеран ✯
- Сообщения: 4960
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 6 раз
- Поблагодарили: 19 раз
Сортировка цифр в поле String
В принципе, да. Заложиться на 4 разряда, к примеру. Кстати, и буквенные индексы должны прокатить.Shur писал(а):Да, я бы завёл так. Назовём его скрытое стринговое поле с разрядным форматированием.
We are hard at work… for you.
Сортировка цифр в поле String
По условию задачи имеем файл данных и С55.
А это сортировка очереди, а не таблицы.
Так что не прокатит.
- Admin
- Администратор
- Сообщения: 3959
- Зарегистрирован: 05 Июль 2005, 15:59
- Откуда: Хабаровск
- Благодарил (а): 25 раз
- Поблагодарили: 22 раза
- Контактная информация:
Сортировка цифр в поле String
Любые таблицы отображаются в бровзе через очередь.
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
-
- ✯ Ветеран ✯
- Сообщения: 4960
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 6 раз
- Поблагодарили: 19 раз
Сортировка цифр в поле String
Эта "фича" изначально существует. Другое дело, может неудобно с этим работать (надо выкачивать весь набор и т.д.). Да и вот это - "Sort(queue,function)", что-то не человеческое. Вот если бы в Order (prop:Order) можно было чего загнать.Shur писал(а):В любом случае в C55 этой фичи не было.
We are hard at work… for you.
- Губин Игорь
- ✯ Ветеран ✯
- Сообщения: 2301
- Зарегистрирован: 16 Сентябрь 2005, 16:35
- Откуда: Москва
- Поблагодарили: 17 раз
Сортировка цифр в поле String
Загнать можно: клаколсек
Вопрос только в том, что он действует на всё, а не только на конкретный файл
Это я только кажусь дураком! На самом деле я полный идиот!
Сортировка цифр в поле String
Угу! Даже в C6.3 этого не было.
А вообще yuriy ещё ни разу нам фидбэк свой не прислал. А мы тут...!
Сортировка цифр в поле String
Большое всем спасибо
так как надо сделать очень быстро вполне подошел вариант предложенный vd-vuf
С Уважением
Юрий
так как надо сделать очень быстро вполне подошел вариант предложенный vd-vuf
С Уважением
Юрий