![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Заголовки колонок Grid-а как кнопки для сортировки [D5, IB5.x]
Dima Kopachev © (2002-02-10 02:24:00)заголовки колонок Grid-а могут быть с помощью свойства TitleButtons использованы как кнопки для изменения порядка сортировки отображаемых данных. Как это можно сделать?
Alexandr (2002-02-11 13:33:00) [1]
когда сервер сортировку делает на основе индекса, а не через файл, то сервером сортируется гораздо быстрее.
Как часто-извращенный случай такого - при индексной сортировке по нескольким полям большого объема данных-сервер справится с этим ЛЕГКО, а вот клиент может загрузиться серьезно- ему ведь индексы недоступны. Да и еще вот FIBPlus при всем своем превосходном быстродействии при работе с dataSet (в том числе Locate, сортировка и прочее) имеет некоторые глюки при локальной сортировке. Тут можно иногда нарваться... Впрочем с глюками они там успешно борются...
Всегда плюс локальной сортировки в том, что не нужно перечитывать каждый раз с сервера- т.е. когда одни и те-же данные юзер постоянно пересортировывает от нефиг делать. Это особенно хорошо для большого объема данных- сеть fetch"ем не грузится, сервак на глупые сортировки не отвлекается.
Fareader (2002-02-11 13:21:00) [2]А когда не экономит и когда очень плохо?
Alexandr (2002-02-11 13:03:00) [3]угу. Именно так. Иногда экономит. Иногда нет, иногда очень хорошо, иногда очень плохо.
Надо смотреть на конкретную ситуацию
Fareader (2002-02-11 12:58:00) [4]Присоединяюсь к Alexandr ©, эта возможность позволяет повысить скорость выполнения запроса, за счет того, что в самом запросе отсутствует сортировка, а это экономит ресурсы сервера.
Alexandr (2002-02-11 11:39:00) [5]а вот если FIBPlus использовать, то там есть локальная сортировка.
Часто это то, что нужно
Севостьянов Игорь (2002-02-11 11:26:00) [6]Как ни крути, а без ORDER BY не обойдешься, он более гибкий нежели индексы...
ilysha (2002-02-11 08:50:00) [7]Есть так же отличная библиотека EhLib, компонент DBGrid которой, поддерживает массу интересных свойств и возможностей. От отечественный и бесплатный.
Если нужно, пиши.
xim (2002-02-11 02:43:00) [8]procedure TMain.DBGrid1TitleClick(Column: TColumn);
if индех такой есть then
table1.IndexFieldNames := column.FieldName;
но у меня Paradox, на других таблицах не испытывал
а что за термин - TitleButtons? Где ты видел такое cв-во
wicked (2002-02-10 18:55:00) [9]2 Dima Kopachev
это зависит от того, откуда ты берёшь данные для grid"а.... если, например, это query (не уточняю, какой :), то можно хранить отдельно текст запроса и форматировать его в зависимости от того, заголовок какой колонки был нажат....
еще лучше - достань rxlib 2.75, там есть dbgrid, который умеет сам рисовать sortmarker... там же есть и пример, как это делать...
Dima Kopachev (2002-02-10 18:22:00) [10]Это все понятно. Я обработаю нажатие на заголовки. Каким образом можно отсортировать записи. Это нужно делать с помощью индексов или еще каким-то образом?
Desdechado (2002-02-10 17:00:00) [11]обрабатывать событие от нажатия на заголовок и в нем - делай, что хочешь