![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
как корректно обновлять данные? [D5, MSSQL]
MakNik © (2003-09-17 15:02:00)
Есть программка, которая конектится к MSSQL серверу. И так на нескольких рабочих станциях. А как корректно обновлять данные, чтобы видеть изменения, внесенные другими пользователями?
Johnmen (2003-09-17 17:51:00) [1]
>Delirium © (17.09.03 17:05)
Кстати, и с закладками здесь не все в порядке...:)
Vlad (2003-09-17 17:35:00) [2]
>Delirium © (17.09.03 17:05) [6]
Это еще зачем ?
Delirium (2003-09-17 17:05:00) [3]
Готовить в отдельном потоке RecordSet, затем...
var B:TBookmark;
...
ADOQuery.DisableControls;
B:=ADOQuery.GetBookmark;
ADOQuery.Recordset:=RecordSet;
try
ADOQuery.GotoBookmark(B);
finally
ADOQuery.FreeBookmark(B);
end;
ADOQuery.EnableControls;
Vlad (2003-09-17 15:16:00) [4]
taDepartment - это TTable, надо понимать ?
Если используешь Active=true/false, тогда необходимо позаботиться, чтобы после переоткрытия курсор стоял на той же записи что и раньше.
Refresh по-моему этого не требует.
А так, вобщем и то и другое нормально.
MakNik (2003-09-17 15:12:00) [5]
Это понятно, но я имел в виду:
DMForm.taDepartment.Active:=False;
DMForm.taDepartment.Active:=true;
или
DMForm.taDepartment.Refresh;
или как-то еще...
Vlad (2003-09-17 15:07:00) [6]
Если нужно автоматически обновлять - то вобщем-то никак.
Можно конечно создать поток, который будет раз в N секунд переоткрывать DataSet, но думаю это не лучшее решение проблемы.
А так - по кнопке.
Reindeer Moss Eater (2003-09-17 15:06:00) [7]
А как корректно обновлять данные, чтобы видеть изменения, внесенные другими пользователями?
Использовать один SQL сервер на всех.
Polevi (2003-09-17 15:04:00) [8]
по нажатии на кнопку пользователем