Francisco e demais colegas, Na verdade eu estou aplicando update de vários ClientDataSet's, então estou fazendo como a própria ajuda recomenda: starto a transação, dentro de um bloco protegido e aplico os updates de todos e salvo (commit), caso ocorra algum erro em um dos CDS's é preciso reverter (rollback).
O erro que eu estou forçando em um dos CDS's é um erro de check constraint no BD (Firebird, esqueci de mencionar antes), onde incluo um registro com valor de um dos campos menor que o permitido, então acredito que o OnReconcileError não vai tratar, não sei... se não me engano são tratados erros de concorrência de registro, não é mesmo? Mas de qq forma, o problema é que está sendo lançada uma exceção do tipo EDatabaseError mas não está indo para o except... A propósito, rodado pelo Delphi é exibida uma exceção com a mensagem que violou uma check constraint e, em seguida, quando aperto F9 novamente, é exibida outra exceção EDatabaseError dizendo que não consegui encontrar o registro, pois não foi informada a chave primária... não sei o que pode ser. Mas o que acontece é que, mesmo após as exceções os comandos seguintes são executados, quando o flúxo deveria ser mudado para o except. Não sei se consegui ser claro, mas se for o caso eu vou fazer um test case ou até montar um exemplo simples para vcs verem o problema. Obrigado a todos! Alisson ----- Original Message ----- From: "Francisco Thiago" <[EMAIL PROTECTED]> To: <delphi-br@yahoogrupos.com.br> Sent: Friday, June 03, 2005 12:35 PM Subject: Re: [delphi-br] try..except não funciona com DBExpress(?) > Seguinte: > > Nunca use ApplyUpdate(-1) pq assim ele vai deixar passar todos os erros. > Faça um ApplyUpdate(0) que a cada erro ele vai chamar o OnReconcileError. > > Se você quiser simplesmente jogar uma execeção para o usuario faça: > > on e: Exception do > raise Exception.Create(e.message) > .. no evento OnReconcileError do CDS. > > Ou se preferir, utilize o diálogo de OnReconcileError do Delphi. Ele tem > um > metodo que basta chamar ele e o diálogo trata o erro com interface pro > usuário. Procure na internet que você vai conseguir maiores detalhes > > > Espero ter ajudado > > > Francisco Thiago de Almeida > Enter&Plug Informática > Divisão: Desenvolvimento e Banco de dados > MSN: [EMAIL PROTECTED] > Skype: enterplug_thiago > > > > > > > ____________________________________________________ > Yahoo! Mail, cada vez melhor: agora com 1GB de espaço grátis! > http://mail.yahoo.com.br > > > -- > <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> > > Para ver as mensagens antigas, acesse: > http://br.groups.yahoo.com/group/delphi-br/messages > > Para falar com o moderador, envie um e-mail para: > [EMAIL PROTECTED] ou [EMAIL PROTECTED] > > Links do Yahoo! Grupos > > > > > > > ____________________________________________________ Yahoo! Mail, cada vez melhor: agora com 1GB de espaço grátis! http://mail.yahoo.com.br -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html