Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];

Вниз

Delphi и MS SQL   Найти похожие ветки 

 
Maniacosaur   (2003-10-24 09:31) [0]

Проблема в следующем. Имеется ADOConnection, ADOTable, DataSource, DBGrid ну и естественно форма :-)
Как сделать, чтобы при обновлении данных на сервере происходило обновление данных в DBGrid. Если в свойствах ADOTable поставить CursorLocation=clUseServer и CursorType=ctDynamic, то DBGrid вываливается с сообщением "Dataset does not support bookmarks, wich are required for multi-record data controls." Как штатными средствами обойти эти грабли?


 
bushmen   (2003-10-24 09:38) [1]

CursorLocation=clUseClient


 
Maniacosaur   (2003-10-24 10:44) [2]

В этом варианте CursorType не принимает других значений кроме ctStatic. Соответственно, если в базе кто то меняет таблицу, то новые значения в грид не попадают. А чтобы попали -- нужно провести ряд манипуляций.


 
Vlad   (2003-10-24 10:48) [3]

>Maniacosaur © (24.10.03 10:44) [2]
Если в базе кто-то меняет значения, значит надо почаще кнопку Рефреш нажимать. Либо делать рефреш автоматически, в потоке, каждые N секунд.


 
Fiend   (2003-10-24 10:51) [4]

штатными никак!
Можно воспользоваться компонентами Alex Konshin
MS SQL Alert. будешь посылать сообщения от сервера клиенту.


 
Maniacosaur   (2003-10-24 10:54) [5]

А что же тогда делают CursorLocation и CursorType?


 
Плохиш_   (2003-10-24 11:06) [6]

>Maniacosaur © (24.10.03 10:54) [5]

А что в хелпе не написано?


 
sniknik   (2003-10-24 11:09) [7]

Fiend © (24.10.03 10:51) [4]
> штатными никак!
уже давно видел стандартный оповешатель в MSSQL (служба доставляется, правда не пользовался и не помню как оно называется, если очень нужно могу поискать, но думаю ктонибудь раньше меня положит)
еще можно так (через ж%#у но штатно, и ничего не нужно доставлять)
exec master..xp_cmdshell "net send client "сделай рефреш!!!"", NO_OUTPUT

Maniacosaur © (24.10.03 10:54) [5]
> А что же тогда делают CursorLocation и CursorType?
грубо это расположение данных, если серверный курсор то они на сервере но для того чтобы их отразить на клиенте их все одно нужно на него перекачивать. (и даже если на сервере они динамически поменялись, то на клиенте все одно об этом не знают)


 
Denis   (2003-10-24 11:15) [8]

Возможно, это будет кстати:

http://www.delphikingdom.com/helloworld/ado01.htm


 
paul_k   (2003-10-24 11:27) [9]


> sniknik © (24.10.03 11:09) [7]
> уже давно видел стандартный оповешатель в MSSQL

А не можете ли подсказать куда в нелпе смотреть?


 
sniknik   (2003-10-24 11:32) [10]

paul_k © (24.10.03 11:27) [9]
не в хелпе а на сайте майкософта, просто статьи читал там и попалось. но вот точно к сожалению сказать не могу. (и пока не нахожу)


 
paul_k   (2003-10-24 11:35) [11]

2 sniknik ©
Направление куда копать понял.
спасибо


 
Maniacosaur   (2003-10-24 11:38) [12]

Все равно грид не рефрешится. Хотелось бы красиво сделать, а не запускать поток, чтобы тот периодически обновлял данные.


 
KSergey   (2003-10-24 11:42) [13]

Ловить оповещения об изменении от сервера
Только так.


 
Maniacosaur   (2003-10-24 12:04) [14]

Плохо


 
sniknik   (2003-10-24 12:24) [15]

б%# чегото совсем не ищется ;о(, глюки у меня тогда были чтоли?.

Maniacosaur © (24.10.03 12:04) [14]
> Плохо
не так уж и плохо если захотеть решить можно, ссылка
http://home.earthlink.net/~akonshin/delphi_ru.htm
см. MS SQL Alerter можеш также сделать.
(другое дело а нужно ли? мне вот не пригодилось хотя этот пример пробовал и на всякий случай ссылку оставил)


 
Delirium   (2003-10-24 12:29) [16]

Если уж делать, то лучше не по Named Pipes, а широковещательно по UDP ...


 
me   (2003-10-24 12:48) [17]

Microsoft SQL Server Notification Services


 
Fiend   (2003-10-24 13:04) [18]

То sniknik:
во-во, я про него и говорил


 
sniknik   (2003-10-24 13:16) [19]

me (24.10.03 12:48) [17]
точно. значит это был не глюк. ;о))


 
Delirium   (2003-10-24 16:01) [20]

http://delphibase.endimus.com/?action=viewfunc&topic=basemssql&id=10474



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.038 c
8-41744
Smok_er
2003-07-11 16:38
2003.11.13
Skinable Interface


1-41715
Тролль
2003-11-03 17:19
2003.11.13
Перенос пр-р и фуну-ий в другой файл


3-40980
Kosta
2003-10-16 17:58
2003.11.13
Получение списка пользователей из MSSQL(2000)


6-41862
romychk
2003-09-09 16:04
2003.11.13
Файлы идут очень долго.


3-41111
Petr
2003-10-23 09:22
2003.11.13
TADOQuery и ListView





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