[firebase-br] when any do - alguem já utilizou?

Cleber Zulian cleber em agrosoftrs.com.br
Qui Jul 17 19:04:32 -03 2008


Alguem já utilizou o tratamento de exceções no firebird 2.0?
estive tentando fazer algum exemplo, mas não consegui ainda entender a 
real utilização.
Pelo que percebi,  colocando uma instrução que geraria uma exception 
dentro do bloco when any, a exception não seria retornada e o processo 
seria comitado até antes deste bloco.
Usando no exemplo abaixo, depois que uso when any não pode existir mais 
nada na procedure, senão não compila. Se tirar o trecho  "  VALOR_PAGO = 15;
                                                            suspend; "

dai compila. Alguem pode explicar melhor essa funcionalidade?

CREATE PROCEDURE TESTE
RETURNS (
    VALOR_PAGO INTEGER)
AS
begin
  VALOR_PAGO = 24;

  WHEN ANY do begin
    valor_pago = valor_pago / 0;
  exception;
  end
 
VALOR_PAGO = 15;

  suspend;

end




Mais detalhes sobre a lista de discussão lista