Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 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.55 MB
Время: 0.031 c
6-68894
bnn
2002-08-19 10:15
2002.10.21
Зависание TNMFTP.List


14-69017
Gumanoid
2002-09-06 17:53
2002.10.21
Win ?????


6-68891
BAHO
2002-08-16 03:27
2002.10.21
Прокси клиент/сервер


1-68872
AL2002
2002-10-10 12:16
2002.10.21
Дело с RichEdit


1-68710
dimonf
2002-10-08 20:41
2002.10.21
Как правильно округлить 3.0299999 в 3.03?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский