Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

wllf

[Resolvido] transações DBExpress 4

Recommended Posts

Pessoal bom dia, estou com uma dúvida sobre como trabalhar com transações no Delphi 2010 x DBExpress 4 x Firebird 2.5, estou desenvolvendo um sistema para loja de Auto Peças de veiculo estou quase terminando só tem problema, na tela de PDV, estou trabalhando com os dados em memória tanto da tabela de Vendas com a Tabela de Item_Venda depois q o usuário finaliza a venda com forma de pagamento e tudo mais aí sim eu gravo no banco de dados até ai normal sem problemas, funciona muito bem.

 

Só q por caso fui finalizar uma venda e tinha em erro(não vem ao caso o erro) nos dados da tabela Item_Venda, ele gravou a venda mas os itens não, a questão é preciso abrir uma transação durante o processo de venda e no caso de surgir qualquer erro durante o processo de gravação ele não grave nada no BD.

 

Acredito que seja a questão de Transações no DBEXpress, será alguém pode me ajudar ..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal só para constar resolvi o problema, lembrando que existe uma diferença para trabalhar com transações usando entre DBEXPRESS 3 e o DBEXPRESS 4, com a versão 4 q está disponível no Delphi 2010 ficou até mais fácil de utilizar, vou postar os comandos básicos:

 

trans :TDBXTransaction;

 

trans := SQLConnection.BeginTransation();

//Esse método é sobrecarregado e pode ser passado um parâmetro de isolamento

 

try

//COMANDOS SQL(INSERT, UPDATE, DELETE)

SQLConnection.CommitFreeAndNil(Trans); //caso ocorra tudo bem

 

except

SQLConnection.RollbackFreeAndNil(Trans);//caso ocorra algum erro

 

end

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.