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

Вниз

ClientDataset.PacketRecords и EOF   Найти похожие ветки 

 
Desdechado ©   (2005-01-22 17:02) [0]

Есть стандартная связка
SQLDataSet->DatasetProvider->ClientDataset
Делаю выборку, причем записей возвращается много. Чтоб с ходу не перегружать клиента, выставил чтение данных пачками по 30
ClientDataset.PacketRecords=30
Но вылез побочный эффект - при достижении конца зафетченой части выборки (на границе пакетов) ClientDataset.EOF становится True, хотя данные еще есть и через некоторое время они дочитываются. Но флаг конца данных уже установлен! Потом он через некоторое время сбрасывается.
Вопрос: Как узнать, что это временная установка флага, а не реальный конец данных? Или как обойти установку флага EOF в этом случае?


 
Nikolay M. ©   (2005-01-22 20:54) [1]

Затычка, конечно, но, может, проверять не
if (CDS.Eof) then ...
а в виде
if (CDS.Eof) then
 if (CDS.GetNextPacket = 0) then ...

? Два ифа для того, чтобы фетч следующего пакета выполнялся только при установке Eof в True и его (не)выполнение не зависело от настроек компилятора.



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

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

Наверх




Память: 0.46 MB
Время: 0.026 c
1-1107333376
denis24
2005-02-02 11:36
2005.02.20
изменения размера шрифта при редактировании в stringgtide


4-1104895906
DmiSb
2005-01-05 06:31
2005.02.20
2 проблемы с DrawText


14-1107090730
Ihor Osov'yak
2005-01-30 16:12
2005.02.20
И снова антиквариат - HyperStr.dcu


4-1104770694
STK
2005-01-03 19:44
2005.02.20
Открыть и закрыть чужую программу.


1-1107359590
SMT
2005-02-02 18:53
2005.02.20
Поддержка Unicode в Delphi 7