Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.10.24;
Скачать: CL | DM;

Вниз

Оптимизация МИДАС.   Найти похожие ветки 

 
yaJohn ©   (2002-10-02 13:15) [0]

Есть МИДАС система. Одной таблице в БД соответствует множество ClientDataSet. Таблица достаточно жирная. Соответственно, при изменениях в одном ClientDataSet, остальным приходится делать refresh. Ну и возможна ситуация изменения таблицы в другом клиенте. А таблица жирная. Есть ли некая стандартная возможность обновлять не весь ClientDataSet, а лишь новые записи (вычислить новые/измененные я могу)? И грузить несколько ClientDataSet тоже не хочется. В принципе - достаточно один, остальные можно из него скопировать, но при этом у остальных должна остаться нормальная связь с Provider. Кто нибудь делал нечто в таком духе?
И еще одна беда. Предполагается использовать систему на нестабильной сети. Т.е. некоторые клиенты сидят на в соседних корпусах и связь с ними через УКВ. Но когда между корпусами проезжает грузовик... Соответственно система должна уметь восстанавливаться после разрыва соединения. Какие идеи по поводу
судьбы девочки, натоптавшей с полсотни записей в таблице, но ApplyUpdates не сказавшей? Нельзя бросать ее в беде! А делать ApplyUpdates на каждом Post тоже низя, девочка не работать будет, а песочными часиками на экране любоваться....

Понимаю, что вопросы абстрактные, но хотелось бы здравые мысли воплотить в жизнь еще на этапе проектирования.

Заранее спасибо.


 
Polevi ©   (2002-10-02 14:42) [1]

1. есть RefreshRecord для обновления нужной записи, правда реализация его в провайдере сделана очень криво - делается запрос к базе а потом запись находится с помощью Locate, у меня есть свой вариант провайдера, могу поделиться, если интересно

2. по поводу отложенного Apply не могу ничего сказать, у меня он делаеться сразу после Post, не знаю вашей специфики, но насчет песочных часов сомнения - послать дельту по сети не так уж проблематично.. у меня так полсотни человек с базой работают, все летает

я для себя сделал вывод что при работе с MIDAS каждая таблица в базе должна иметь PK поле, чего и вам советую




 
yaJohn ©   (2002-10-02 16:13) [2]

>меня есть свой вариант провайдера
Интересно. Если можно - на мыло плизс.


>у меня он делаеться сразу после Post
обновление таблицы может повлечь за собой автоматическое обновление еще парочки таблиц и т.д. Иногда это растет как снежный ком...


>каждая таблица в базе должна иметь PK поле
Мн... Какое поле??? У меня в каждой таблице есть поле обновляемое при каждой модификации данных(на стороне сервера аутоматычно) и только вверх. Значение - уникально по базе. Смотрим у клиента макс. значение сего поля, все что в базе имеет большие значения - нужно обновлять.



 
Polevi ©   (2002-10-02 18:13) [3]

письмо ушло



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

Текущий архив: 2002.10.24;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.02 c
1-78487
студент2002
2002-10-13 11:47
2002.10.24
Коды функциональных клавиш


1-78515
pirat
2002-10-14 01:38
2002.10.24
string to PChar


3-78203
NewI
2002-09-30 08:42
2002.10.24
Как получить кол-во записей в TQuery. RecordCount не


1-78489
msdn1
2002-10-13 15:04
2002.10.24
Richedit


6-78582
softal
2002-08-20 08:46
2002.10.24
Обновление через Inet