Форум: "Сети";
Текущий архив: 2002.01.17;
Скачать: [xml.tar.bz2];
ВнизКак DCOM клиенту узнать об изменениях данных на сервере/базе Найти похожие ветки
← →
maxi (2001-10-22 16:17) [0]Как заставить клиента DCOM автоматом обновлять данные, если они изменились на сервере/базе? Имеется метод Refresh у компонента ClientDataSet, но он неудобный - надо самому вызывать.
Есть предложения ?
← →
maxi (2001-10-22 16:43) [1]Ребята, ну не уж-то не поможете, а ? Я уже 2 дня долбаюсь.
← →
maxi (2001-10-22 16:55) [2]Ну кто-нить то ответит?
← →
sedoy (2001-10-22 17:41) [3]не знаю природы изменений, но представляю так
на сервере разбиваешь изменения на классы (либо если однотипные, то делаешь счетчик изменений). По событию (счетчик достиг определенного значения ) с сервера шлешь клиентам команду рефреш. В общем суть в том, что сервер дает команду обновления
← →
maxi (2001-10-23 09:18) [4]Интересно, а как это будет выглядеть ? Хотя бы намекните, как сервер уведомляет клиента? Ведь у меня используется SocketConnectinon и технология Midas. Данные идут пакетами. Да и как вообще сервер узнает об обновлении данных ?
← →
sedoy (2001-10-23 16:12) [5]все в виде рекомендации, сам с такой ситуацией не сталкивался, но возможно придется, если что получится - напиши на мыло
контроль обновления данных возлагается на клиента(при изменении некоторого поля возводится флаг или счетчик и т.д.).
на сервере определи некий метод, в котором клиент передает серверу информацию об изменениях. сервер ведет свой учет по всем клиентам и при некотором значении принимает решение о "всеобщем обновлении".
Простейший вариант - таблица с одной строкой, которую периодически проверяет клиент.
Посмотри, что в другом сообщении сказал digitman. Пробуй...
В общем извращение, но глядя в потолок говорить трудно.
← →
Digitman (2001-10-23 16:23) [6]>sedoy
Вот именно - глядя в потолок не рассуждай об извращениях)
← →
sedoy (2001-10-23 17:08) [7]остроумно, но конкретных решений я пока не видел
← →
Digitman (2001-10-23 17:31) [8]>sedoy
Я решал (и успешно решил) эту задачу, потому и рекомендую автору ... и не все там так уж сложно (хотя и не так уж просто) в реализации ... просто надо не полениться и изучить "потроха" BSS, TServerSocket и TSocketConnection
← →
sedoy (2001-10-23 17:54) [9]спасибо за ответ. сам буду пробовать
← →
maxi (2001-10-24 08:57) [10]>Digitman
А что скажешь по поводу свойства SupportCallbacks ? Я прочитал хелп на это свойство, но ни хрена не понял зачем оно нужно, а главное - как его использовать ? понял только что оно нужно для маршалинга вызовов с сервака на клиент. В этой задаче оно может быть использовано ?
← →
Digitman (2001-10-24 10:10) [11]>maxi
Не только можно - нужно ! Но без доработки все равно не обойтись.
Чтобы понять, как его использовать, изучи TTransportThread.Execute (модуль SConnect). Транспортный поток как раз и запускается в режиме SupportCallbacks = True.
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2002.01.17;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.004 c