Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.11.18;
Скачать: [xml.tar.bz2];

Вниз

Визуализация запроса   Найти похожие ветки 

 
Veles   (2002-10-22 05:41) [0]

Подскажите МАСТЕРА !
Возможно ли в процессе выполнения запроса показывать какой-либо индикатор ? База большая 250000 строк и запрос иногда довольно ощутимо отрабатывает по времени. Пользователи сатанеют и давят куда попало :-(


 
VAleksey   (2002-10-22 07:01) [1]

Индикатор вряд ли.
Остается просто показать форму на которой будет проигрываться какая - нибудь небольшая авишка (по типу как при копировании в виндовс). Тогда пользователи будут знать что программа не зависла


 
Veles   (2002-10-22 07:05) [2]

А как с передачей управления ?
Т.Е. как закрыть эту форму по окончании действия запрос ? собственно именно в этом и проблема.


 
VAleksey   (2002-10-22 07:12) [3]

примерно так

IndicatorForm.Show;
Query1.Open;
IndicatorForm.Close;

Ну и там в событиях IndicatorForm OnShow например начинай гонять авишку. Все должно работать.


 
Veles   (2002-10-22 07:18) [4]

Спасибо :-))


 
Виталий Панасенко   (2002-10-22 08:47) [5]

В RxLib что-то есть но я не понял как работает. Там насчет Call-back функций BDE что-то написано... Ну, оно мне надо ?.. :-)))


 
Reindeer Moss Eater   (2002-10-22 10:10) [6]

Индикатор показать конечно можно, только SQL сервер часто сам не знает, сколько времени требуется для выполнения запроса.


 
Fiend   (2002-10-22 10:37) [7]

Можно действительно исполльзовать колобки (callback functions). Если кому надо могу кинуть пример.

Тока надо заметить, что оно не для всех БДЖ работает. Это оговаривает сам Борланд. Т.к. не все СУБД обеспечивают работу этого механизма. Работает тока в Ракле Микрософте и Сибэйзе.


 
b-Ars   (2002-10-22 12:17) [8]

>Fiend © (22.10.02 10:37)
Да, плиз, если не сложно, киньте примерчик


 
MsGuns   (2002-10-22 13:52) [9]

Если запрос "независимый", например, для получения некоторого запроса, во время выполнения которого юзер может продолжать себе смотреть или редактировать таблицы, я часто использую запуск TQuery как паралелльно процесса или ветки (Thread), показывая где-нибудь в статус-баре что-то типа "Формирование отчета", через таймер опрашивая его (процесс) на предмет завершения или просто проверяя содержимое некоего флажка, который переводится в True самим дочерним процессом по завершению запроса или скрипта.
Тормозить этот процесс-запрос из головного процесса не рискую, - боюсь выбрыков BDE.

Напрямую отслеживать состояние выполнения запроса в BDE через стандартные BDE-компоненты ТОЧНО НЕЛЬЗЯ. Исследуя прямые вызова Dbixxxxxx, что-то подобное встрячал, но, честно скажу, толком не разобрался - больно круто написано (для меня 8)


 
b-Ars   (2002-10-30 14:32) [10]

Всё, что я нарыл по этому поводу в хэлпе, это: cbGENPROGRESS, но там ничего конкретного, одна вода, может быть кто-нибудь разбрался? Киньте примерчик плиз.


 
gek   (2002-10-30 14:37) [11]

Посм как это в Rx сделано. Правда не всегда корректно работает


 
Geka   (2002-10-30 15:10) [12]

Можно просто менять курсор...
Screen.Cursor := crHourGlass;
Query.Open;
Screen.Cursor := crDefault;



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

Форум: "Базы";
Текущий архив: 2002.11.18;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.009 c
1-59227
Ученик
2002-11-06 14:45
2002.11.18
Round(4.5) = 4, Round(5.5) = 6


1-59118
NaZGHUL
2002-11-08 12:15
2002.11.18
Помогите!!!!!


1-59217
denis-a
2002-11-06 16:21
2002.11.18
Документация по компоненту Async Professional ver. 4 for Delphi


1-59261
Xman
2002-11-07 09:54
2002.11.18
Немогу понять может поможете


3-59024
mas_alexey
2002-10-29 18:35
2002.11.18
Dbgrid





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский