[firebase-br] [!! SPAM] Re: Firebird 2.5

Jáber Lima jaber em confesoft.com.br
Qua Ago 10 16:00:19 -03 2011


Boa tarde Paulo.
Obrigado pela resposta.
Atualmente também deixo o DBX se encarregar disso.
Uso o controle transacional manualmente apenas quando preciso trabalhar 
com algumas query's dentro do sistema.

Obrigado pela dica..

--
Jáber Sancho Coelho de Lima
Cel: (66)9613-2594
Fax: (66)3426-2171
Msn: jabertecnico em hotmail.com
Skype: jabertecnico


Em 10/08/2011 14:10, Paulo Portella escreveu:
> "costumo" deixar que o dBX se encarregue, mas você mesmo pode 
> "opera-lo" veja um exemplo:
>
> http://www.drbob42.com/examines/examin95.htm
>
> Nesse endereço você vai ver algumas "formas" de controlar a 
> Transação,  procure no trecho que exemplifica "*dbExpress Transaction 
> Isolation Level"*
>
> procedure TFormMain.btnDBXClick(Sender: TObject);
> var
> ..Trans: TTransactionDesc;
> begin
> ....MSSQLCONNECTION.Open;
> ....if MSSQLCONNECTION.TransactionsSupported then
> ....begin
> ......Trans.IsolationLevel := xilREADCOMMITTED; // default
> ......MSSQLCONNECTION.StartTransaction(Trans)
> ....end;
> ....try
> ......MSSQLCONNECTION.Execute('UPDATE ACCOUNT SET BALANCE = BALANCE + 
> 100 ' +
> ..............................'WHERE ACCOUNTNR = 41', nil);
> ......MSSQLCONNECTION.Execute('UPDATE ACCOUNT SET BALANCE = BALANCE - 
> 100 ' +
> ..............................'WHERE ACCOUNTNR = 42', nil);
> ......if MSSQLCONNECTION.TransactionsSupported then
> ........MSSQLCONNECTION.Commit(Trans)
> ....except
> ......if MSSQLCONNECTION.TransactionsSupported then
> ........MSSQLCONNECTION.Rollback(Trans)
> ....end;
> ....cdsAccount.Active := False;
> ....cdsAccount.Active := True // Refresh
> end;
>
>
> Vida de americano é assim: iPhone, iPod, iPad, iMac….
> Já a de brasileiro é assim:IPTU, IPVA, ICMS, IPI etc
>
>
> Em 10/08/2011 13:42, Jáber Lima escreveu:
>> Boa tarde Paulo.
>> Gostaria de saber: Você faz uso de abrir a fechar as transações 
>> manualmente mesmo usando o ClientDataSet ou você usa apenas o 
>> ApplyUpdates(x) deixando o DBX se encarregar de startar e commitar as 
>> transações?
>>
>> Grato por sua ajuda...
>>
>> -- 
>> Jáber Sancho Coelho de Lima
>> Cel: (66)9613-2594
>> Fax: (66)3426-2171
>> Msn: jabertecnico em hotmail.com
>> Skype: jabertecnico
>>
>>
>> Em 01/08/2011 23:22, Paulo Portella escreveu:
>>> Boas meu amigo,
>>> Você já chegou a "debugar" seu aplicativo para "achar" a linha exata 
>>> do erro/trava ? Se sim, posta aqui pra noizes ver.
>>>
>>> O Applyupdate com o "quarteto fantástico" é melhor executar "se 
>>> tiver mudanças", exemplo:
>>>
>>> if ClientDataSet.ChangeCount>0 then ClientDataSet.ApplyUpdates(xyz);
>>>
>>> usar o Apply sem o ChangeCount, sim, vai "levantar" uma mensagem 
>>> desgostosa.
>>>
>>> Você pode tambem "startar transação" e fazer Commit/Rollback dela, 
>>> mesmo com o "quarteto fanstástico", não vejo porque do espanto disso.
>>>
>>> O dbExpress é uma das melhores tecnologias que conheço (e uso), não 
>>> desmerecendo IBX/ADO/etc... Tambem usei elas por muitos anos, mas 
>>> prefiro DBX.
>>>
>>> Vem pro news TrollNet para discutirmos melhor esse assunto :
>>>
>>> servidor: Trollnet.no-ip.org
>>> sala : vtnc.Linguagens.Delphi
>>>
>>> ;-)
>>>
>>> Vida de americano é assim: iPhone, iPod, iPad, iMac….
>>> Já a de brasileiro é assim:IPTU, IPVA, ICMS, IPI etc
>>>
>>>
>>> Em 01/08/2011 18:19, Fabricio Wallia escreveu:
>>>> Att.
>>>>
>>>> Estava com alguns problemas com travamento do sistema no momento do
>>>> "ApplyUpdates(0)", verifiquei que o motivo deste travamento seria a 
>>>> demora
>>>> da mensagem(erro) do banco de dados.
>>>> Percebi que o comando "ApplyUpdates(0)" nao estava dando o commit nas
>>>> procedures de atualizacao que utilizo em meu FDB.
>>>>
>>>> Quando executo o comando ApplyUpdates(0), ele automaticamente cria 
>>>> um Start
>>>> e Commit no banco de dados, minha pergunta é: Si eu comecar a 
>>>> trabalhar com
>>>> transacao utilizando o  trio parada dura (TSqlDataSet + 
>>>> TDatasetProvider +
>>>> TClientDataset), quando der o ApplyUpdates(0) o ele manter a
>>>> transacao(automatica do banco) nao comitada, o commit da minha 
>>>> aplicacao ira
>>>> sobrepor o commit do comando?
>>>>
>>>> Creio que poucos saberao responder
>>>> ______________________________________________
>>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>>> Para saber como gerenciar/excluir seu cadastro na lista, use: 
>>>> http://www.firebase.com.br/fb/artigo.php?id=1107
>>>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>>
>>> ______________________________________________
>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>> Para saber como gerenciar/excluir seu cadastro na lista, use: 
>>> http://www.firebase.com.br/fb/artigo.php?id=1107
>>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>>
>>
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> Para saber como gerenciar/excluir seu cadastro na lista, use: 
>> http://www.firebase.com.br/fb/artigo.php?id=1107
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use: 
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>




Mais detalhes sobre a lista de discussão lista