Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.10.21;
Скачать: CL | DM;

Вниз

FibDataSet   Найти похожие ветки 

 
Bishop   (2002-09-29 21:08) [0]

Уважаемые мастера! Сделал сортировку методом DoSortEx очень большой таблицы, и повесил окошко для отмены сортировки. Если нажать отмену, то сортируются только уже фетченные записи. Но при скроллировании вниз надо опять фетчить. У меня это не получилось и часто виснет грид (TDBAltGrid).


 
Alexandr ©   (2002-09-30 08:46) [1]

ничего не понял.
Но сделай после dataSet.Open сразу dataSet.FetchAll


 
Prooksius ©   (2002-09-30 10:06) [2]

А не легче ли получать запросом уже отсортированный список? (order by)


 
Bishop   (2002-09-30 10:26) [3]

Не, у меня сложнейший View , и , чтобы получить отсортированный список с словом order by, надо обязательно использовать индексы в служебном слове Plan (иначе база виснет после нескольких минут расчетов). А индексы есть не везде. И Plan менять тяжело.


 
Prooksius ©   (2002-09-30 10:36) [4]

Ну, согласно исходникам, при вызове DoSort вызывается Sort, который вызывает FetchAll. Тебе всеравно придется фетчить все, чтобы отсортировать. Виснет Grid? попробуй DBGridEh.
Вообще, подумай, имеет ли смысл для юзера видеть такое большое кол-во записей? Может, стОит переделать что-то в базе и клиенте, чтобы не было такого сложного view-а и не надо было столько строчек отображать?


 
Bishop   (2002-09-30 10:56) [5]

Согласен, что гнать тысячи записей неправильно, но так просили...
А фетчить все необязательно (можно отменить где-нибудь посередине). В этом вся штука. так сделано в quickdesc, программе от FIB. Там сортируются только фетченные записи (а не все...). Если скроллить ниже, то новые записи досортировываются.



Страницы: 1 вся ветка

Текущий архив: 2002.10.21;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.019 c
1-68807
vugo
2002-10-09 13:21
2002.10.21
Отправка почты под Exchange 5.5


4-69081
Aquaform
2002-09-09 10:40
2002.10.21
Как изменить шрифт


1-68733
Peroon
2002-10-11 11:16
2002.10.21
Ну совершенно идиотский вопрос.


3-68609
cherepovets
2002-09-28 16:06
2002.10.21
Calc поле


4-69062
МИФИст
2002-09-06 00:50
2002.10.21
Перерисовка RichEdit...