![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TClientDataSet [D6, Access]
parivet © (2007-08-28 13:04:00)Недавно стал использовать TClientDataSet.
Как я понял, изменения, накапливаються на клиенте, а потом в одной короткой транзакции делается сохранение этих изменений.
Как применять изменения сразу? Необходимо мгновенное обновление выпадающих списков при корректировке справочников.
Сергей М. (2007-08-28 14:18:00) [21]Не все.
В справке сказано:
The example below shows the preparation of a TADODataSet component for batch update mode.
with ADODataSet1 do begin
CursorLocation := clUseClient;
CursorType := ctStatic;
LockType := ltBatchOptimistic;
CommandType := cmdText;
CommandText := 'SELECT * FROM Employee';
Open;
end;
parivet (2007-08-28 14:15:00) [22]ADOQuery.LockType = ltBatchOptimistic
ADOConnection1.BeginTrans();
ADOQuery1.UpdateBatch(arAll);
ADOConnection1.EndTrans();
это не все условия?
Сергей М. (2007-08-28 13:59:00) [23]
> parivet (28.08.07 13:56) [10]
А условия для "результативной" работы метода ты соблюл ?
В справке они довольно подробно описаны.
parivet (2007-08-28 13:56:00) [24]ADODataSet1.UpdateBatch(arAll);
нет результата.
Сергей М. (2007-08-28 13:53:00) [25]
> sniknik © (28.08.07 13:46) [7]
Если имеется ввиду UpdateBatch, то его функциональность, конечно, во оснговном сходна с АpplyUpdates, но более ограничена.
parivet (2007-08-28 13:53:00) [26]
> на ура при ClientDataSet1.ApplyUpdates(-1)
У меня результат остался тот же... секунды через 3-4 обновление.
> sniknik © (28.08.07 13:46) [7]
А почему не сказать как?
sniknik (2007-08-28 13:46:00) [27]> С т.з. наличия там аналога TClientDataSet.ApplyUpdates ?
> Никак.
> У ADODataSet, мягко говоря, несколько иные задачи.
ну вообще то подобное есть, только с другим названием, т.что он может решать и эти задачи тоже, и к тому же без лишних(в этом случае) посредников.
Vic111 (2007-08-28 13:37:00) [28]ну я пробовал также, если связь по сети есть, то все проходит на ура при ClientDataSet1.ApplyUpdates(-1)
parivet (2007-08-28 13:32:00) [29]
> Vic111 (28.08.07 13:25) [4]
Эт ты зря...
Я связал ADODataSet1 - > DataSetProvider1 - > ClientDataSet1
это правильно? делать у ClientDataSet1.ApplyUpdates ?
Vic111 (2007-08-28 13:25:00) [30]Попала на глаза эта ветка, спрошу и я здесь:
переодически бывают сбои в сети, стал смотреть в сторону TClientDataSet. Если, например в процессе работы произошел сбой, то как все сделанные изменения можно сохранить и отправить после восстановления сети.
Сергей М. (2007-08-28 13:24:00) [31]
> как быть с ADODataSet?
С т.з. наличия там аналога TClientDataSet.ApplyUpdates ?
Никак.
У ADODataSet, мягко говоря, несколько иные задачи.
parivet (2007-08-28 13:20:00) [32]А как быть с ADODataSet?
Сергей М. (2007-08-28 13:09:00) [33]
> Как применять изменения сразу
см. ApplyUpdates