Вниз
Скачать: CL | DM;

StartTransaction.   Найти похожие ветки 

← →
Mery   (2007-09-21 08:56) [0]

Есть IBDataSet. С ней связана IBTransaction.
Открываю свой IBDataSet.
Далее Код:
Tran_Pat.StartTransaction;
try
Pat.Edit;
....
Pat.Post;
Tran_Pat.CommitRetaining;
except
Tran_Patient.RollbackRetaining;
end;
На форме IBTransaction.Active в False;
Но программа даёт ошибка Transaction is Active. Почему? Когда она активизировалась?


← →
Sergey13 ©   (2007-09-21 09:03) [1]

> [0] Mery   (21.09.07 08:56)
> Когда она активизировалась?

Когда ты открыла свой датасет связанный с транзакцией. И потом, когда сказала CommitRetaining
Не следует явно стартовать транзакцию привязанную к датасету.


← →
Mery   (2007-09-21 09:19) [2]

>Когда ты открыла свой датасет связанный с транзакцией.
Я так и подумала.
>Не следует явно стартовать транзакцию привязанную к датасету.
То есть вообще не писать Tran_Pat.CommitRetaining?
А как тогда формировать откат?
Как вообще задавать тогда начало транзакции,чтобы в случае чего произвести откат?
Как выглядит код на моём примере?


← →
Sergey13 ©   (2007-09-21 09:25) [3]

> [2] Mery   (21.09.07 09:19)
> То есть вообще не писать Tran_Pat.CommitRetaining?

Стартовать - это Start по аглицки. Открыла датасет - стартовала. CommitRetaining - сохранила и перестартовала транзакцию.


← →
Mery   (2007-09-21 09:35) [4]

Поняла.Спасибо.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.01 c
2-1198242394
Kubik
2007-12-21 16:06
2008.01.27
Передача файла


6-1179135826
DVM
2007-05-14 13:43
2008.01.27
Программа c IdUDPServer вываливается в окно CPU


3-1190236571
Nic
2007-09-20 01:16
2008.01.27
Вытащить данные без повторов


2-1198489780
KV
2007-12-24 12:49
2008.01.27
Электронная библиотека


2-1199041662
DmT
2007-12-30 22:07
2008.01.27
использование стандартного ввода/вывода для конс. приложений




   Наверх