Postgres 9.6 + Zeos + Delphi XE8 + Transaction

14/02/2017

0

Bom dia pessoal,

Andei pesquisando mas não achei uma solução ou problema parecido.

Estou desenvolvendo um sistema e uso muitas transações. Estou tendo problemas com Commit e Rollbacks.
Resumindo, para cada cadastro que eu começo eu inicio as transaçõesmanualmente dando um ZConnection.StartTransaction e commito com um Zconnection.Commit.
Bom até ai tudo ok. mas uma situação é o seguinte.

Inicio uma Venda -- StartTransaction
Não tenho o cliente cadastrado. Na tela de vendas eu consigo chamar o form de cadastro e cadastrar o cliente. então vai outro StartTransaction.
Finalizo o cadastro do Cliente - Commit.
Os dados do cliente deveria esta na base depois disso correto? Pois então, não acontece.
Finalizo a Venda - Commit; - Ai sim todos os dados vao para o banco incluindo o cadastro do cliente. Caso eu desista da venda e clico em cancelar, o cadastro do cliente não vai pro banco tb.

Resumindo, se eu iniciei uma transação, não consigo iniciar outra transação dentro dessa. é como se não existisse a segunda transação.


Existe uma solução para isso, alguém tem um exemplo ai ou faz diferente?
Casa

Casa

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar