Вниз
Скачать: CL | DM;

Асинхронность в ADO   Найти похожие ветки 

 
Zelius ©   (2003-07-14 20:04) [0]

Хочу сделать поиск по таблице, причем так, что бы пользователь видел находимые записи по мере их нахождения и мог прервать процесс в любой момент. Для этого поставил ExecuteOptions := [ eoAsyncExecute, eoAsyncFetch], потом определил OnFetchProgress и OnFeatchComplete. Вопрос, могу ли я в OnFeatchProgress начать читать записи? Проверял, в этот момент Active = False;
Спасибо!


 
sniknik ©   (2003-07-14 22:49) [1]

сколько записей предполагается найти? если пару сотен то получение пролетит, не заметиш. а выполнение все одно останется "за кадром".

смысл имеет (успееш среагировать и прервать) от нескольких тысяч записей. (170тыс принимается ~25-30сек, естественно зависит от машины/таблици/т.д.)


 
Zelius ©   (2003-07-15 09:51) [2]


> sniknik © (14.07.03 22:49)

может быть несколько тысяч! с учетом добавления результатов в список и отображение в TListView процесс идет достаточно долго и прерывать - нужная функция! Вот только я не уверен в правильности подхода к работе с асинхронными запросами....


 
sniknik ©   (2003-07-15 10:18) [3]

если добавляеш сам (TListView) то поставь просто серверный курсор. данные будут "докачиватся" по мере обращения.

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


 
Zelius ©   (2003-07-15 11:59) [4]


> sniknik © (15.07.03 10:18)

оставил серверный курсор - схема перестала работать! :)


 
sniknik ©   (2003-07-15 12:14) [5]

какая "схема"? распайка платы в холодильнике полетела? сочуствую. :)

все должно работать. кроме гридов(рекордсет не поддерживает вукмарки)... ну они тубе вроде не нужны.
а если нужен грид добавляеш клиентский датасет с источником.


 
Zelius ©   (2003-07-15 14:58) [6]


> sniknik © (15.07.03 12:14)

при уставовке CursorLocation = UseServer у меня перестали вызываться события OnFetchProgress и OnFetchComplete...


 
sniknik ©   (2003-07-15 15:36) [7]

естественно, они стали не нужны, данные открываются на "сервере" а на клиента поступают по мере запроса. (Next, Last, ... передвигает позицию обновляет данные)


 
Zelius ©   (2003-07-16 11:57) [8]


> sniknik © (15.07.03 15:36)

логично! :)
Спасибо!



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
14-20739
~~~DEVELOPER~~~
2003-07-20 18:10
2003.08.07
Помогите с модемом!!


9-20374
R2D2
2003-02-04 23:35
2003.08.07
GLScene - Управление объектами, созданными динамически


1-20556
Dmitriy_R
2003-07-23 13:13
2003.08.07
Работа с ТХТ файлом


14-20668
berezuev
2003-07-22 19:19
2003.08.07
Как уменьшить размер DELPHI exe-шника? 500Kb - многовато!


3-20414
Сана
2003-07-16 17:14
2003.08.07
Немецкий в Access!




   Наверх