Форум: "Базы";
Текущий архив: 2005.09.04;
Скачать: [xml.tar.bz2];
ВнизНедопустимая закладка Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.011 c