Home
Top.Mail.Ru Yandeks.Metrika
Forum: "Bases";
Current archive: 2002.01.08;
Download: [xml.tar.bz2];

Down

Implicitly Started Transactions Find similar branches


Hermit   (2001-12-05 11:38) [0]

Никак немогу разобраться с субжем.
Имею Query, свойства которого CachedUpdates и RequestLive установлены в True и на события AfterDelete и AfterPost навешена процедура UpdateTable, приведенная ниже.

procedure TDataMod.UpdateTable(DataSet: TDataSet);
begin
with DataSet as TDBDataSet do
begin
Database.StartTransaction;
try
ApplyUpdates;
Database.Commit;
except
Database.Rollback;
CancelUpdates;
raise;
end;
CommitUpdates;
end;
end;

Все это прекрасно работает, но после перевода Query в режим редактирования и последующем вызове ApplyUpdates появляется ошибка "A user transaction is already in progress".
Очевидно, что при вызове Query.Edit неявно стартует транзакция, но почему при вызове Query.Insert и последующем подтверждении изменений такой ошибке не возникает?



User_OKA   (2001-12-05 14:33) [1]

А если перед Database.StartTransaction проверять свойство InTransaction?
For example, the
if not TIBTransaction.InTransaction then Database.StartTransaction;
Если неявная транзакция пошла, то StartTransaction выполняться не будет.



Pages: 1 whole branch

Forum: "Bases";
Current archive: 2002.01.08;
Download: [xml.tar.bz2];

Top









Memory: 0.81 MB
Time: 0.038 c
1-22100
Avol
2001-12-15 18:29
2002.01.08
How in Delphi to make a table of records for the game?


7-22429
Oleg_swap
2001-09-20 19:13
2002.01.08
remote start of the program


1-22199
T2
2001-12-16 07:16
2002.01.08
Make process


1-22069
Xtorm
2001-12-19 10:40
2002.01.08
How?


4-22486
Pantero
2001-11-03 23:59
2002.01.08
Handle





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 Español 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
English French German Italian Portuguese Russian Spanish