[firebase-br] Tratando Exception SPs
João Paulo
jpcarvalhoi2 em gmail.com
Seg Jun 23 08:25:26 -03 2008
...
except
on E:Exception do
begin
frmDm.Rollback;
if pos('String gerada na sua Exception',E.message) > 0 then
showmessage('Chave Duplicada');
end;
end;
...
On Sun, Jun 22, 2008 at 8:43 PM, Anderson Miranda Barrozo <
andersonpaduarj em gmail.com> wrote:
> Boa noite,
>
> Utilizo o FB 2.0 com DBExpress e Delphi 2006. Abaixo coloquei 2 codigos. O
> primeiro são os comandos que executo a
> SP no delphi utilizando o componente SQLStoredProc e o outro é a SP que uso
> para incluir no BD. Na SP verifico o SQLCODE
> e gero um Exception.
>
> A Exception está sendo gerada somente quando estou debugando no Delphi:
> Project SISPedra.exe raised exception class EDatabaseErros with message
> 'Database Server Erros: exception 1
> CHAVE_DUPLICADA
>
>
> O que deveria fazer para ao gerar a Exception na SP fosse retornado a
> menssagem para a aplicação.
>
>
> Código no evento BeforePost para executar a SP
> ----------------------------------------------------------------------
> if cdsMala.State = dsInsert then
> begin
> frmDm.Start;
> try
> with spMala_I do
> begin
> Params[0].AsString := cdsMalaCODMALA.AsString;
> Params[1].AsString := cdsMalaDESCMALA.AsString;
> ExecProc;
> frmDm.Comit;
> end;
> except
> frmDm.Rollback;
> end;
> end;
>
>
> CREATE PROCEDURE TBCODMALA_INS (
> codmala varchar(1),
> descmala varchar(20))
> as
> begin
> insert into tbcodmala (
> codmala,
> descmala)
> values (
> :codmala,
> :descmala);
> when sqlcode -803 do
> begin
> Exception chave_duplicada;
> End
> end
>
>
> --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
> AS Informática
> Anderson Miranda Barrozo
> (22) 8115-8761
> MSN: andersonpaduarj em hotmail.com
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
--
João Paulo de Carvalho Ignácio
Analista Desenvovedor
T1Brasil - Serviços de Informatica
Inspell Tecnologia
(32)9973-1367
jpcarvalhoi2 em gmail.com
Mais detalhes sobre a lista de discussão lista