[firebase-br] Tratando Exception SPs

Anderson Miranda Barrozo andersonpaduarj em gmail.com
Dom Jun 22 20:43:13 -03 2008


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



Mais detalhes sobre a lista de discussão lista