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

Вниз

Как обновить значение в DBgrid измененное в другой программе   Найти похожие ветки 

 
vanatage10   (2009-06-18 15:52) [0]

возможен вариант когда известна запись, которая изменена

запрос аналогичен
http://delphimaster.net/view/3-1243862381/

MSSQL 2005, Delphi 7, ADOQuery


 
Ega23 ©   (2009-06-18 15:58) [1]

Гарантированно - никак. Можно прикрутить костыли и пользоваться ими.
Вариант 1.
Посылка UDP-сообщения.
Вариант 2.
Запоминать дату последнего изменения, на сервере её апдейтить, а на клиенте по таймеру опрашивать. Если дата поменялась - обновлять информацию.

ИМХО, и то и другое - фигня. Запрос должен идти от пользователя.


 
Sergey13 ©   (2009-06-18 15:59) [2]

> [0] vanatage10   (18.06.09 15:52)
> запрос аналогичен

Так и ответ аналогичен.


 
vanatage10   (2009-06-18 16:04) [3]

ADOQuery.Refresh

а что нибудь типа этого?


 
Ega23 ©   (2009-06-18 16:12) [4]


> а что нибудь типа этого?


ADOQuery.Close;
ADOQuery.Open;


 
vanatage10   (2009-06-18 16:18) [5]

так не пойдет, т.к. потеряется указатель с записи...

а как тогда программно установить в DBGrid нужное значение?


 
Sergey13 ©   (2009-06-18 16:21) [6]

> [5] vanatage10   (18.06.09 16:18)

Запомнить старое значение ключевой записи и перейти на него после переоткрытия.


 
Dennis I. Komarov ©   (2009-06-18 16:22) [7]

А зачем пользователю указатель на запись?


 
Ega23 ©   (2009-06-18 16:35) [8]


> а как тогда программно установить в DBGrid нужное значение?


procedure DSRefresh;
var
 value : Integer;
begin
 value := -1;
 if (DS.Active) and (not DS.IsEmpty) then
   value :=  DS.FieldByName("Ключевое поле").AsInteger;
 DS.Close;
 try
   DS.Open;
   DS.Locate("Ключевое поле", value, []);
 except
   ......
 end;
end;


 
Игорь Шевченко ©   (2009-06-18 17:28) [9]

RTFM: Bookmarks или Locate


 
Ega23 ©   (2009-06-18 17:35) [10]


> RTFM: Bookmarks или Locate


Bookmarks при переоткрытии использовать нельзя.


 
Игорь Шевченко ©   (2009-06-18 18:18) [11]

Ega23 ©   (18.06.09 17:35) [10]


> Bookmarks при переоткрытии использовать нельзя.


Это к ADO относится ? Я просто ADO плохо знаю :)


 
Ega23 ©   (2009-06-18 19:20) [12]


> Это к ADO относится ? Я просто ADO плохо знаю :)


Нет гарантии, что после открытия букмарки будут валидными.


 
vanatge   (2009-06-19 01:59) [13]

а не нельзя при открытой ADO обновить одну запись/поле не закрывая
или просто ее переписать?
_______________________________
главное не закрывать!


 
Ega23 ©   (2009-06-19 10:09) [14]

Можно. Попробуй TADODataSet.Resync



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

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

Наверх




Память: 0.5 MB
Время: 0.011 c
2-1277572345
New555
2010-06-26 21:12
2010.09.19
Использовние sndPlaySound для проигрывания нескольких файлов


15-1276586599
brother
2010-06-15 11:23
2010.09.19
Электронные сигареты


3-1245398109
Patrick
2009-06-19 11:55
2010.09.19
Группировка данных при использовании ExpressQuantumGrid


15-1277321953
Petr V. Abramov
2010-06-23 23:39
2010.09.19
Как правильно пожарить свиную шейку?


2-1277667083
Terpelo
2010-06-27 23:31
2010.09.19
Управление словарем Lingvo через Alt + щелчок мышки