Текущий архив: 2002.08.15;
Скачать: CL | DM;
ВнизПрогрес пересчета SQL Найти похожие ветки
← →
Alibaba (2002-07-25 13:17) [0]Всем привет!
Я связал два SQL (мастер/детал)
Посчитался Query1, результат в DBGrid1.
Когда я двигаюсь по DBGrid1, Query2 пересчитывается и показывает результат в DBGrid2.
На событие Query2.AfterOpen я повесил процедуру подсчета количества записей:
procedure TMain.AfterOpen(DataSet: TDataSet);
begin
Label.Caption:="Всего записей - "+IntToStr(Query2.RecordCount);
end;
Query2.AfterOpen:=AfterOpen;
Время пересчета около минуты и я хочу в это время показывать работу (что-бы знать что мы не висим). На-пример, увеличивать значение ProgressBar.
На какое событие Query2 мне повесить увеличивать значения ProgressBar?
Пробовал на Query2.BeforeOpen...
Но в этом случае работает только первый раз, когда считается Query1...
Подскажите кто знает, плиз.
← →
Lusha (2002-07-25 13:40) [1]Зачем использовать TQuery.RecordCount? Почему не использовать запрос с аггрегатной функцией COUNT... Может и минуту ждать не придется... :)
← →
Володя Шарапов (2002-07-25 13:50) [2]Попробуй повесь на BeforeScroll.
Это событие происходит перед тем как форма хочет перейти от одной записи к другой. (по крайней мере так написано в хелпе).
← →
Володя Шарапов (2002-07-25 13:51) [3]Имеется ввиду Query1.BeforeScroll.
← →
Володя Шарапов (2002-07-25 13:52) [4]> Володя Шарапов
Дык пробовал я так - не хочет! :(
← →
Viewer (2002-07-25 13:54) [5]Может попробовать Application.ProcessMessages.
← →
Scotch (2002-07-25 13:57) [6]Как то обсуждался вопрос по поводу обработки SQL-ей.
Помоему в этом форуме дней 6 назад.
Там можно написать удаленную процедуру на серваке, которая сообщает клиенту о начале и окончании расчета.
← →
Alibaba (2002-07-25 14:00) [7]> Scotch
По поводу теоретической возможности существования такой процедуры я очень сомневаюсь...
Или у меня недостаточно знаний... :(
← →
Viewer (2002-07-26 16:30) [8]Из-за большого количества канареек острова называются Канарские.
А если нежна задержка можно использовать или Sleep(Time) или while VariableBoolean do ;
← →
BAY (2002-07-26 17:00) [9]Только если запрос выполняется в отдельном потоке
← →
Alibaba (2002-07-26 17:26) [10]Да,да!
Запрос выполняется в отдельном потоке.
Скажите КАК это сделать!!!
Очень надо!!!!
← →
BAY (2002-07-26 18:00) [11]В хелпе по TThread все написанно... и пример есть.
Страницы: 1 вся ветка
Текущий архив: 2002.08.15;
Скачать: CL | DM;
Память: 0.46 MB
Время: 0.006 c