Форум: "Базы";
Текущий архив: 2003.12.19;
Скачать: [xml.tar.bz2];
ВнизУдаление записи из БД Interbse. Найти похожие ветки
← →
alst (2003-11-27 08:42) [0]Пытаюсь написать процедуру возврата
курсора к месту удаленной записи.
Не уверен правильно ли выразился, но опишу подробнее.
Есть компонент Query, Хранимая процедура(удаляет запись),
DBGrid.
После удаления закрываю и открываю Query.
Курсор на первой записи - это меня не устраивает,
мне нужна ближайшая запись, где стоял курсор до удаления.
Пишу такой код(в понятном для Вас виде):
procedure Form1.RecDel;
var BM:TBookMark;
begin
DB.StartTransaction;
try
StoredProc.ParamByName("Id").AsInteger:=QueryId.Value;
StoredProc.ExecProc;
DB.Commit;
BM:=Query.GetBookmark;
Query.Close;
Query.Open;
if Query.BookmarkValid(BM) then Query.GotoBookmark(BM);
except
DB.Rollback;
end;
end;
Все равно на первой записи, закладка не помогает :-(
Может поможете!!!
← →
Anatoly Podgoretsky (2003-11-27 08:46) [1]Query.Next и запомнить ID, потом Locate на нее
← →
Vemer (2003-11-27 10:03) [2]А если Query.EOF то Query.Prev.
← →
Johnmen (2003-11-27 10:11) [3]>Anatoly Podgoretsky © (27.11.03 08:46)
Он же её удалил...:)
Но рыть надо в этом направлении...
← →
Anatoly Podgoretsky (2003-11-27 10:38) [4]Vemer © (27.11.03 10:03) [2]
если Query.EOF то встать на следующую нельзя! Возможно и на предыдущую тоже.
← →
Vemer (2003-11-27 11:15) [5]To [4]
Next стоит в вашем примере :).
В моем Prev.
В общем надо проверять EOF/BOF перед тем как куда-то вставать.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.12.19;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.008 c