Главная страница
    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.44 MB
Время: 0.007 c
1-68781
TTCustomDelphiMaster
2002-10-11 17:37
2002.10.21
двоичные константы


3-68678
Dimedrol
2002-09-27 15:59
2002.10.21
Как раскрасить ROWS! в DBGrid-e ?


8-68881
Rocky Jr.
2002-06-22 06:22
2002.10.21
Real Player и Guitar Pro


4-69060
muslim
2002-09-06 18:39
2002.10.21
Программное нажатие


14-69022
Катерина
2002-09-29 12:54
2002.10.21
Внимание! Конкурс...





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский