![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Обновление данных в трехзвенной архитектуре [D7, Paradox]
RomanH © (2006-03-10 17:14:00)День добрый мастера.Как известно после метода ApplyUpdates компонента TClientDataSet на сервере приложений в DataSetprovider который обеспечивает связь возникает событие OnUpdateData. Каким образом надо использовать это событие, чтобы мнгновенно, после изменения НД на одном клиенте сервер приложения переслал остальным клиентам уже обновленный НД.
Ломброзо (2006-03-12 00:32:00) [1]Nikolay M. © (10.03.06 21:39) [2]
ИМХО статья уже чуток устарела.
* * *
Вообще, сервера приложений не должны держать постоянный коннект с клиентами, а тем более пропихивать данные клиенту насильно, но если такая потребность возникает, то общепринятым механизмом уведомления клиента является механизм асинхронных обратных вызовов. Что касается платформы Windows, для этого "заточена" служба Microsoft Message Queue (MSMQ), ну ещё можно покопать про подписку на события компонентов COM+.
Nikolay M. (2006-03-10 21:39:00) [2]
> Каким образом надо использовать это событие, чтобы мнгновенно,
> после изменения НД на одном клиенте сервер приложения переслал
> остальным клиентам уже обновленный НД.
Версия Romkin-a. Не без глюков, но как вариант - вполне.
http://rsdn.ru/article/db/callback.xml
Vlad (2006-03-10 17:20:00) [3]
> RomanH © (10.03.06 17:14)
> Каким образом надо использовать это событие, чтобы мнгновенно,
> после изменения НД на одном клиенте сервер приложения переслал
> остальным клиентам уже обновленный НД.
В общем случае - никак.
Каждый клиент может порождать новый инстанс приложения-сервера