A/C Cantu - RES: [firebase-br] Transação fica pendente até a aplicação ser fechada

Christian Balz balz em celservice.com.br
Ter Nov 16 16:05:33 -03 2004


Cantu,

Pq o update fica com uma transação pendente quando realizado na SP?

[]'s
Christian Balz

-----Mensagem original-----
De: Antonio Carlos [mailto:a.lima.silva em terra.com.br] 
Enviada em: terça-feira, 16 de novembro de 2004 13:54
Para: Christian Balz
Assunto: Re: [firebase-br] Transação fica pendente até a aplicação ser
fechada

No IBX voce quando quer 'comitar ' a transação e mante-la aberta, vc faz
CommitRetaining que efetua a operação solicitada.
Nao sei se o MDO tem essa opção , se eu estivesse usando IBX, colocaria um
TTransaction ligado ao TDataBase mas não o utilizaria nas operações , usaria
n componentes TTransaction para cada operação, imagine que voce tem um
componente TQuery que voce usa para Select,Insert,Update, colocaria um
TTransacion legado a ele e faria sempre Commit ou Rollback e um novo Select
para atualizar os dados alterados.
Mas NAO TENHO CERTEZA DO QUE VOU FALAR AGORA : CONFIRME : creio que as
Procedures do banco quando executadas realizam um Commit automatico, o banco
se encarrega, ai de qualquer modo, mesmo que vc usasse o contexto de
transação única teria que dar um refresh/select para ver as alterações,



----- Original Message ----- 
From: "Christian Balz" <balz em celservice.com.br>
To: "'Antonio Carlos'" <a.lima.silva em terra.com.br>
Sent: Tuesday, November 16, 2004 1:40 PM
Subject: RES: [firebase-br] Transação fica pendente até a aplicação ser
fechada


Isto mesmo. E exatamente igual ao IBX.

[]'s
Christian Balz

-----Mensagem original-----
De: Antonio Carlos [mailto:a.lima.silva em terra.com.br]
Enviada em: terça-feira, 16 de novembro de 2004 12:23
Para: Christian Balz
Assunto: Re: [firebase-br] Transação fica pendente até a aplicação ser
fechada

Nao conheco bem o MDO, mas imagino que seja parecido com o IBX que vem no
delphi, teria um componente para acessar TDatabase e outro que controla a
transação TTransaction ?
----- Original Message ----- 
From: "Christian Balz" <balz em celservice.com.br>
To: "'Antonio Carlos'" <a.lima.silva em terra.com.br>; "'FireBase'"
<lista em firebase.com.br>
Sent: Tuesday, November 16, 2004 9:12 AM
Subject: RES: [firebase-br] Transação fica pendente até a aplicação ser
fechada


Utilizo uma Query do MDO e Firebird 1.5.2. Executo a SP com um select como
segue abaixo:

       SQL.Add('Select Nome,Login,Senha,Posto,CGC,Operacao,Nivel,Acesso From
Logon(:V01,:V02)');

[]'s
Christian Balz

-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Antonio Carlos
Enviada em: terça-feira, 16 de novembro de 2004 08:41
Para: FireBase
Assunto: Re: [firebase-br] Transação fica pendente até a aplicação ser
fechada

Voce usa apenas uma transacao principal ? Qual metodo de acesso ?


----- Original Message ----- 
From: "Christian Balz" <balz em celservice.com.br>
To: "'FireBase'" <lista em firebase.com.br>
Sent: Tuesday, November 16, 2004 8:13 AM
Subject: [firebase-br] Transação fica pendente até a aplicação ser fechada


Ola pessoal,



Tenho uma SP que verifica o logon de usuário, se o usuário e senha estiverem
corretos então a tabela recebe um update com a hora e data do ultimo logon.
O problema é que a transação fica pendente no banco até que usuário feche a
aplicação. Existe alguma forma de confirmar os dados no momento da
autenticação?



    For Select
U.Nome,U.Login,U.Senha,C.Nome,C.CGC,C.Operacao,U.Nivel,U.Acesso

        from Usuarios U, Clientes C

        where ( U.Posto=C.CGC ) and ( U.Ativo = 'S' ) and ( U.Login=:V01 )
and

        ( U.Senha = :V02 )

        into :Nome,:Login,:Senha,:Posto,:CGC,:Operacao,:Nivel,:Acesso do
begin



        if (Nome is Not Null) then

            Update Usuarios Set Acesso = Cast('NOW' as TimeStamp) where
(Login

            =:Login) and (Senha=:Senha);

        Suspend;

    end



[]'s

Christian Balz

______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br


______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br









Mais detalhes sobre a lista de discussão lista