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

Вниз

Как сделать ProgressBar на выполнение запроса???   Найти похожие ветки 

 
Relaxxx ©   (2004-04-15 10:24) [0]

Собственно проблема, есть запрос который долго выполняется и нужно чтобы, во время его выполнения бежал ProgressBar. У меня база данных Oracle8.0.5 и пользуюсь ODAC 3.85


 
Sergey13 ©   (2004-04-15 10:43) [1]

Нормально - никак. ИМХО.
Лучше анимашку какую нить запусти. Или работай над запросом, иногда потребность в прогресбаре отпадает совсем. 8-)


 
dimm22   (2004-04-15 10:53) [2]

Запусти ProgressBar по таймеру, просто чтобы пользователь видел, что программа не висит.


 
Relaxxx ©   (2004-04-15 11:02) [3]

очень жаль, :-((((
А запрос уже оптимизирован, просто это для ведомости и работает он со множеством таблиц и со сложными групировками


 
VAleksey ©   (2004-04-15 11:06) [4]

На самом деле для оракла как-то можно.
Ведь считает он стоимость запроса. Значит примерно можно определить состояние запроса по количеству прочитанных блоков. Какая-то его тулза даже умеет это делать. Сам видел :-)).


 
Relaxxx ©   (2004-04-15 11:28) [5]

Узнать бы какая :-), попробую сейчас порытся может что-то и накопаю


 
Reindeer Moss Eater ©   (2004-04-15 11:32) [6]

Фигня все это.
Сервер сам ничего не знает про свою нагрузку которая у него будет через три секунды. Поэтому и время окончания запроса он не знает, а только догадывается.
Прогресс бар - баловство.
Cursor := crSQLWait или просто анимация


 
Соловьев ©   (2004-04-15 11:34) [7]

У ADO есть TCustomADODataSet.OnFetchProgress - может такое есть и у DAO

Но имхо, можно только закачку определить, но никак не время выполнения запроса. Это зависит от многих причин.


 
serge35   (2004-04-15 11:38) [8]

Даже мелкософт при всей своей любви к рюшечкам ничего кроме анимации не придумал.
У Оракла тоже по-моему ничего нет. Если бы было, то в Oracle Applications наверняка это было бы раелизовано.


 
slayer   (2004-04-19 03:45) [9]

Посмотри может подойдет http://www.delphimaster.ru/download/index1.html


 
VAleksey ©   (2004-04-19 09:18) [10]


> serge35   (15.04.04 11:38) [8]

См.

> Reindeer Moss Eater ©   (15.04.04 11:32) [6]


 
Anatoly Podgoretsky ©   (2004-04-19 09:22) [11]

Такой прогресс бар можно сделать только выполнив весь запрос, но тогда пропадает смысл в этом. Да и то только в монопольном режиме, при том только для процента выполнения, но не для времени.


 
Vemer ©   (2004-04-19 09:26) [12]

Вариант - узнаем с помощью Count число строк в будущем запросе, а потом рисуем ProgressBar определенное время исходя из данной цифери. Но не очень прямое решение..:).


 
Sergey13 ©   (2004-04-19 09:38) [13]

2Vemer ©   (19.04.04 09:26) [12]
А как рисовать прогрес для запроса с count?


 
dimm22   (2004-04-19 10:04) [14]


> Вариант - узнаем с помощью Count число строк в будущем запросе

Так это по времени, наверное, будет сравнимо с самим запросом ?!


 
_sulent ©   (2004-04-19 13:30) [15]

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

Делай аниме и не мучайся...


 
Женя   (2004-04-19 14:29) [16]

интересно, а как же строится програссбар в  DbExplorer32.
Выглядит весьма естественно, похоже, отображается по количеству обработанных на данный момент строк.
Притом отображается и при рапросах и при проверке и при перестройке индексов корректно. Может посмотрите, кто там больше в этом смыслит?
у меня RX Database Explorer v2.5 Кошевникова и Павлука.


 
Соловьев ©   (2004-04-19 14:31) [17]


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

что значит обработаных? при запросе? или при каких-то операциях?


 
Женя   (2004-04-19 14:36) [18]

Обработанных запросом.



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

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

Наверх




Память: 0.51 MB
Время: 0.023 c
14-1082814600
Piter
2004-04-24 17:50
2004.05.16
Ничего не понимаю


3-1082543239
Gennadiy
2004-04-21 14:27
2004.05.16
Вопрос по поводу организации метода FIFO


7-1080708481
ГАГН
2004-03-31 08:48
2004.05.16
ярлык у программы.


1-1083000926
Leonardo_de_caprio
2004-04-26 21:35
2004.05.16
Как ПРАВИЛЬНО останавливать Treadы в Delphi?


1-1083355606
konstantinov
2004-05-01 00:06
2004.05.16
Автоматически уничтожаемое окно