Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Как узнать прошла ли транзакция или нет ? / 9 сообщений из 9, страница 1 из 1
22.07.2004, 13:18:41
    #32616803
Dmitriy O.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как узнать прошла ли транзакция или нет ?
Вопрос в том что скжем есть форма где вводят данные
перед закрытием если небыли вызванны методы Rollback
или Commint. Вызвать диалог "Сохранить записи ?"
Так вот как узнать была ли уже транзакция или нет ?
...
Рейтинг: 0 / 0
22.07.2004, 13:20:37
    #32616810
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как узнать прошла ли транзакция или нет ?
Dmitriy O.Вопрос в том что скжем есть форма где вводят данные
перед закрытием если небыли вызванны методы Rollback
или Commint. Вызвать диалог "Сохранить записи ?"
Так вот как узнать была ли уже транзакция или нет ?
Что значит "была ли уже"?
...
Рейтинг: 0 / 0
22.07.2004, 13:26:03
    #32616827
Johnmen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как узнать прошла ли транзакция или нет ?
...
Рейтинг: 0 / 0
22.07.2004, 13:32:32
    #32616834
doroshka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как узнать прошла ли транзакция или нет ?
На чем пишешь клиент?
Например на Delphi можно проверить так
Код: plaintext
1.
2.
3.
4.
if IBTransaction1.Active then 
//транзакция еще активна - делаешь то что тебе надо или Commit или Rollback
else
//транзакция уже завершена.

Это интересует? Или что-то другое? Тогда, плиз, подробнее опиши проблему...
...
Рейтинг: 0 / 0
22.07.2004, 14:08:18
    #32616919
Dmitriy O.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как узнать прошла ли транзакция или нет ?
Проблема в том что есть форма куда набиваются данные есть специальный кнопель для сохранения данных (Commit) И такойже кнопель "Отменить"
(Rollback) И скажем если Юзер забыл нажать эти кнопки то перед закрытием
формы ему напомнить что данные нужно или сохранить или отменить
Но если он уже сохранил данные то такое сообщение лишний раз не нужно выдавать
Пишу на Delphi
...
Рейтинг: 0 / 0
22.07.2004, 14:17:19
    #32616937
alex_k
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как узнать прошла ли транзакция или нет ?
а что, завести специальную переменную типа saved:boolean; коммунистическая мораль не позволяет?
...
Рейтинг: 0 / 0
22.07.2004, 14:27:31
    #32616964
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как узнать прошла ли транзакция или нет ?
Навесь обработчик события OnStateChange на все свои датасеты. (Один на всех)
Типа такого:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
procedure dS_StateChange(Sender: TObject);
var
  i: integer;
begin
  NeedSave := false;
  for i :=  0  to ComponentCount -  1  do
    if Components[i] is TIBCustomDataSet then
      with (Components[i] as TIBCustomDataSet) do
        if (State in [dsEdit, dsInsert]) then NeedSave := true;
end;
NeedSave - проперть формы на которой лежат эти датасеты.
Анализируй эту переменную в обработчике событий OnUpdate для
акций (TAction), реализующих Commit и Rollback.
...
Рейтинг: 0 / 0
22.07.2004, 14:35:55
    #32616989
Johnmen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как узнать прошла ли транзакция или нет ?
>Мимопроходящий

А чей ComponentCount у тебя в примере ?
И ежели датасеты были созданы динамически и не имеют владельца ?
:)
если хочешь
...
Рейтинг: 0 / 0
22.07.2004, 14:42:34
    #32617014
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как узнать прошла ли транзакция или нет ?
JohnmenА чей ComponentCount у тебя в примере ?Формы. Я же писАл.
Просто не стал писАть procedure MyForm.dS_StateChange(Sender: TObject);
дабы не смущать вопрошавшего.
JohnmenИ ежели датасеты были созданы динамически и не имеют владельца ?:)С дуру можно и Буй сломать...
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Как узнать прошла ли транзакция или нет ? / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]