Вниз
Скачать: 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-20756
Nucl
2003-07-14 16:05
2003.08.07
Оформление программы


3-20416
Oleg The First
2003-07-16 17:48
2003.08.07
MS SQL + TADOStoredProc


1-20471
KA_
2003-07-24 19:37
2003.08.07
RichEdit и Replace


1-20493
deadcdrom
2003-07-25 07:22
2003.08.07
DLL


14-20784
Gooz
2003-07-22 09:33
2003.08.07
Глюки




   Наверх