Fórum Mudar de If-Else para Try-Except.... #224084

02/04/2004

0

Boa tarde companheiros....
Vejam se podem me ajudar....

Como faço para aplicar o codigo abaixo em uma estrutura Try-Except, de forma que se acontecer uma exceção alem da minha mensagem em portugues sai também o exceçao/erro que o banco(FB) emitiu


******* Isolamento do applyupdate(0) em Estrutura If-Else
var
TransDesc : TTransactionDesc;
begin
TransDesc.TransactionID := 1;
TransDesc.IsolationLevel := xilREADCOMMITTED;
dtmDados.Conexao.StartTransaction(TransDesc);
If DataSetA.ApplyUpdates(0) = 0 then
dtmDados.Conexao.Commit(TransDesc)
Else
Begin
dtmDados.Conexao.Rollback(TransDesc);
ShowMessage(´Ocorreram problemas na gravação dos dados!
Abort;
End;
end;
******* Fim do Isolamento do applyupdate(0) em Estrutura If-Else


Da forma abaixo, não está saindo a mensagem de excecao... O que pode estar errado?

******* Isolamento do applyupdate(0) em Estrutura Try-Except
var
TransDesc : TTransactionDesc;
begin
Try
TransDesc.TransactionID := 1;
TransDesc.IsolationLevel := xilREADCOMMITTED;
dtmDados.Conexao.StartTransaction(TransDesc);
If DataSetA.ApplyUpdates(0) = 0 then
dtmDados.Conexao.Commit(TransDesc)
Except
on Exc:Exception do
begin
SQLConnection1.Rollback(Transacao);
ShowMessage(´Ocorreram problemas na gravação dos dados!
end;
end;
******* Fim do Isolamento do applyupdate(0) em Estrutura Try-Except

Um grande abraço a todos..
pablo - Marília/SP


Pablo_lima

Pablo_lima

Responder

Posts

02/04/2004

Skaarj

Olha um pedaço do codigo por mim usado, para tentar commitar o banco e em caso de erro retornar a mensagem do banco:

      try
        QryUpdateBalcIte.ExecSQL;
        DM.DB.Commit;
      except
        on e : EDBEngineError do
          begin
            MsgBox(´Não foi possível atualizar o banco de dados ´+#13+
                   ´Erro : ´+e.Message,´Aviso´,MB_ICONEXCLAMATION);
            DM.DB.Rollback;
          end;
      end;



Responder

Gostei + 0

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

Aceitar