Olá, Roberto, Eu penso que está enviando, porque está da seguinte forma:
vendas{Prop:SQL}='DELETE ...' if Checa_Erro(Loc:Mensagem)=true ...vendas{Prop:SQL}='ROLLBACK' ...message(Loc:Mensagem) end Se a mensagem é mostrada, obrigatoriamente entrou no if e passou pelo ROLLBACK. Mas vou fazer uns testes pra garantir. Obrigado. Ronei ----- Original Message ----- From: Roberto Mello To: Comunidade PostgreSQL Brasileira Sent: Thursday, February 02, 2012 11:05 AM Subject: Re: [pgbr-geral] Transações > Realmente eu envio vários scripts dentro da transação, mas mesmo assim, se eu substituir o COMMIT do final pelo ROLLBACK, ou colocar o ROLLBACK em algum ponto da rotina, o postgres cancela toda a transação. Por que o clarion/obscuro esta enviando o rollback corretamente para o PG. > Agora vamos imaginar que exista relacionado à tabela vendas a tabela vendas_observacoes e eu tenha esquecido de excluir, vai dar erro de relacionamento. Neste caso, a função delete(0) do clarion mostra uma mensagem de erro, a aplicação mostra a mensagem 'Não consegui excluir a venda', o que me faz concluir que o ROLLBACK foi enviado, A sua conclusão esta incorreta. O clarion nao esta mandando o rollback para o PG e segue em frente como se tudo estivesse certo. Veja se há alguma configuração do clarion que mude esse comportamento, ou então você vai ter que verificar o retorno depois de cada chamada. Roberto ------------------------------------------------------------------------------ _______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
_______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral