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

Вниз

Помогите разобраться с методом BookmarkValid у TADOQuery   Найти похожие ветки 

 
ru_efim   (2005-08-23 10:41) [0]

При удалении записи выполняется код:
with ADOQuery1 do
 begin
   B:= GetBookmark;
   Close;
   Open;
   if BookmarkValid(B) then
     GotoBookmark(B)
   else
     Last;
 end;
(ADOQuery через TADOConnection "подключен" к базе на MsSQL Server)
Если запись не последняя в наборе то все нормально, если же последняя то при выполнении оператора BookmarkValid генерируется исключение класса EOLEExpection "Недопустимая закладка". Не пойму GetBookmark выполняется, с помощью BookmarkValid как раз и проверяет "верна" ли закладка. В чем я ощибаюсь? И как правильно?


 
Reindeer Moss Eater ©   (2005-08-23 10:47) [1]

перед вызовом BookmarkValid(B) проверяй Assigned(B)


 
ru_efim   (2005-08-23 11:24) [2]

Assigned(B) возвращает Trye. Так тоже не получается?


 
sniknik ©   (2005-08-23 11:24) [3]

после Close; Open; букмарк содержит "мусор" чисто случайно который може содержать правильный адрес... на надеятся на это не желательно.
проверка же проверяет чтото этому адресу чтото есть, а не то, что он принадлежит валидной структуре.


 
Desdechado ©   (2005-08-23 13:55) [4]

букмарк валидный только между Open и Close
а так это просто адрес на некий участок памяти



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

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

Наверх




Память: 0.47 MB
Время: 0.049 c
1-1126775624
keal
2005-09-15 13:13
2005.10.09
Компилятор кода Delphi в прогу под Unix


1-1126864825
nikolas
2005-09-16 14:00
2005.10.09
TPop3Cli


4-1123710061
Vadimich
2005-08-11 01:41
2005.10.09
Каким образом винда закрывает программы при рестарте?


14-1127202536
WondeRu
2005-09-20 11:48
2005.10.09
Automatic Control Magazine 1995-2005


14-1127116268
Fay
2005-09-19 11:51
2005.10.09
Написание оптимального кода под Delphi