Форум: "Базы";
Текущий архив: 2002.10.21;
Скачать: [xml.tar.bz2];
ВнизНе корректная работа BookMark-ов на ClientDataSet-е Найти похожие ветки
← →
Азазелло (2002-09-27 09:33) [0]Всем доброго времени суток!
D5 + ADO + MSSQL2000
Использую связку TADODataSet->TDataProvider->TCLientDataSet. После постинга записи в ClientDataSet мне необходимо получить идентификатор записи, который объявлен как Identity на сервере. Методу Resync - у ClientDataSet-а не работает : ( Refresh же, соответственно, переоткрывает датасет и я теряю добавленную позицию, поскольку у меня стоит сортировка. Пытался использовать BookMark-и так :
With cds_DataSet Do
Begin
Try
Post;
ApplyUpdates(-1);
Except
<ругаюсь и сваливаю>
End;
BookMark:=GetBookMark;
Refresh;
GoToBookMark(BookMark);
FreeBookMark(BookMark);
End;
Но букмарки почему-то срабатывают из 8 раз раза 3-4. В дальнейшем позиционируются не пойми куда.
Кто подскажет, как мне получить идентификатор добавленной записи.. желательно не прибегая к использованию хранимой процедуры с возвратом Ident_Current. Вообще-то хочется получать идентификатор без использования серверной части и оставаться на той же записи, что была добавлена.
С уважением, Игорь.
← →
Johnmen (2002-09-27 09:53) [1]1. То, что букмарк так себя ведет - совершенно законно и объяснимо...
2. Если есть еще одно уникальное поле кроме ID, то можно использовать это обстоятельство...
← →
Азазелло (2002-09-27 16:52) [2]В том-то и дело, что его нет..
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.10.21;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.007 c