Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Заголовки колонок 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]

обрабатывать событие от нажатия на заголовок и в нем - делай, что хочешь


Наверх

Титульная страница Поиск, карта сайта Написать письмо