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

Вниз

Недопустимая закладка   Найти похожие ветки 

 
Vir ©   (2005-07-26 00:27) [0]

Работая с MsAccess через Ado, так вот заметил что подобный код


procedure ReQuery(DataS:TCustomADODataSet);
var bmk:TBookmark;
begin
bmk:=DataS.GetBookmark;
try
DataS.Requery;
finally
if DataS.RecordCount>0 then
 DataS.GotoBookmark(bmk);
except
DataS.FreeBookmark(bmk);
end;

строка DataS.GotoBookmark(bmk); выдает ошибку
"Недопустимая закладка" если запись на помеченная закладкой стояла в списке последней и после Refresh была удаленна.
Т.е. если запись находилась не в конце базы и была удалена, код работает. Может быть это частный случай но у меня именно так.

Как избежать ошибки с закладкой?

Причем совершенно не важно


 
Anatoly Podgoretsky ©   (2005-07-26 09:02) [1]

Не используй букмарки, это кривой костыль. Для перемещения есть Locate и первичные ключи.


 
Johnmen ©   (2005-07-26 09:07) [2]

То, что закладка укажет хоть на какую-нибудь запись после переоткрытия набора данных - чистая случайность. Но очень часто именно так и бывает, ибо освободившаяся из под НД память тут же им же и заполняется...


 
Slym ©   (2005-07-26 10:05) [3]

if DataS.BookmarkValid(bmk) then ...


 
Desdechado ©   (2005-07-26 11:23) [4]

Закладки имеют смысл только до закрытия датасета. После переоткрытия это просто мусор, иногда похожий на что-то...



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

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

Наверх




Память: 0.47 MB
Время: 0.033 c
9-1115776028
Slavikk
2005-05-11 05:47
2005.09.04
Отличие DCE и ODE в GLScene в Чём?


3-1122014076
DimonS
2005-07-22 10:34
2005.09.04
Как организовать одновременный доступ к БД Paradox?


1-1123673312
Uran
2005-08-10 15:28
2005.09.04
Сохранить RAVE в pdf


8-1114086942
anat
2005-04-21 16:35
2005.09.04
OpenGL транформация


14-1123685668
Radgar
2005-08-10 18:54
2005.09.04
Книга по Turbo Pascal