![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Кто-нибудь юзал TADOQuery::OnFetchProgress??? Поделитесь ... [MSSQL]
DBDev © (2003-07-04 10:27:00)И в какой зависимости оно находится от флажков Execute options.
Пытаюсь выполнить пример из Борланда, описаный в хелпе:
void __fastcall TCForm::BQueryFetchProgress(TCustomADODataSet *DataSet, int Progress, int MaxProgress, TEventStatus &EventStatus)
{
AnsiString S;
S = AnsiString(Progress / MaxProgress * 100) + "%";
Caption = "Percent complete: " + S;
Application->ProcessMessages();
}
Результат - в конце показывает 100% и все, процесс не виден.
eoAsyncfetch = true;
sniknik (2003-07-04 13:33:00) [1]Max_ (04.07.03 12:57)
отправил, пример постенький к пониманию доступный :о))
коннект там к Access базе, ее сделай сам и таблицу в принципе любую (в запросе поправит на ту что есть), только побольше, изначально в примере использовалась таблица с 171713 записями. (признаки увидиш)
Max_ (2003-07-04 12:57:00) [2]Забыл написать, что DB у меня Oracle!
Аха, было бы не плохо пример посмотреть!
sniknik (2003-07-04 12:52:00) [3]там ясно все, но обьяснить не знаю как. (ну как обьясниш, я вот делаю eoAsyncfetch:= true; и все работает)
хотите пример вышлю, писал както (тоже у когото не получалось, выясняли долго так и не выяснили, а после того как посмотрел все стало получатся, хотя говорил то же самое делал :о))
пример писан на D7(6 вроде тоже должен взять)
Max_ (2003-07-04 12:41:00) [4]У меня вообще не показывает ничего! Выполняется запрос на 150000 записей, делаю Last а эффекта никакого!!!
ADOQuery (eoAsyncfetch:= true;)
а в событии onFetchProgress пишу:
Caption:=inttostr(Progress);
Application.ProcessMessages;
KSergey (2003-07-04 12:40:00) [5]> sniknik © (04.07.03 10:50)
> сделай для примера простой запрос, но на большую таблицу
> ~10-100тыс записей, будет видно.
В смысле на большую выборку на клиента?
sniknik (2003-07-04 10:50:00) [6]мало(записей), причем время выполнения запроса не учитывается и неопределено, только время перекачки данных на клиента отслеживается.
сделай для примера простой запрос, но на большую таблицу ~10-100тыс записей, будет видно.
DBDev (2003-07-04 10:44:00) [7]Запрос сложный, композиция множества таблиц, выполняется секунд 4-5 как минимум. Это мало?
DBDev (2003-07-04 10:43:00) [8]В таблице в аккурат 410 записей.
sniknik (2003-07-04 10:40:00) [9]видать мало записей в таблице, пример борландовский рабочий в дельфях провереный.