Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 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
1-52539
Yuri Btr
2001-12-27 17:13
2002.01.17
Размер файла


14-52666
MJH
2001-11-18 13:56
2002.01.17
nVidia Drivers 21.88


7-52675
Lizard
2001-09-30 13:59
2002.01.17
Как из списка в listbox1 удалить нужную строку ?


1-52565
Yuraz
2001-12-28 14:00
2002.01.17
Хотелось бы сделать ProgressBar в модальном окне для своей программы, не знаю как...


4-52690
NetBreaker666
2001-11-15 03:07
2002.01.17
Опять все теже HOOk и





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