[firebase-br] RES: Trigger

José Mauricio Barbisan Zottis zottissistemas em gmail.com
Quinta Setembro 8 13:26:18 -03 2022


acho que o que você quer fazer é algo assim:
CREATE EXCEPTION EXCEPTION_GENERICA 'MEU TEXTO!';

       if (old.qt_atendida > 0) then
         begin
           EXCEPTION exception_generica 'JÁ EXISTE QUANTIDADE ATENDIDA.
IMPOSSÌVEL EXCLUIR - SOLICITAÇÃO';
         end else
         if (old.qt_quantia is null) then
         begin
           EXCEPTION exception_generica 'A QUANTIDADE PRECISA SER DECLARADA;
         end else




Em qui., 8 de set. de 2022 às 12:19, Carlos H. Cantu via lista <
lista em firebase.com.br> escreveu:

> Você não leu a documentação com atenção.
>
> Exception tem que ser seguido do nome da exceção que será disparada. Só
> pode ser
> usado sem o nome se já estiver dentro de um bloco de tratamento de exceção
> e vc
> quiser dar um re-raise da exceção capturada por ele.
>
> []s
> Carlos H. Cantu
> eBook Guia de Migração para o FB 4 - www.firebase.com.br/guiafb4.php
> www.FireBase.com.br - www.firebirdnews.org - blog.firebase.com.br
>
> U|I> Prezados
>
> U|I> Grato pelas informações.
>
> U|I> Seguindo as orientações contidas no link, tentei executar as seguintes
> U|I> instruções (a trigger foi compilada sem problemas):
>
> U|I> "AS
> U|I>  declare variable Entrega date;
> U|I> begin
> U|I>    EXCEPTION;"
>
> U|I> Porém a execução do código não foi interrompido.
>
>
> U|I> Ai realizei a seguinte modificação:
>
>
> U|I> "AS
> U|I>  declare variable Entrega date;
> U|I> begin
> U|I>    EXCEPTION;
> U|I>    exception producao;"
>
>
> U|I> Desta forma a execução do procedimento é interrompido no 2º exception.
>
> U|I> O que poderia estar faltando no comando?
>
> U|I> Em realidade estou precisando de um comando que interrompa a execução
> de uma
> U|I> trigger dado certas condições como por exemplo um campo em branco,
> etc. Não
> U|I> precisa ser necessariamente o EXCEPTION.
>
> U|I> Saudações
>
> U|I> Wagner Aranha
>
> U|I> -----Mensagem original-----
> U|I> De: lista <lista-bounces em firebase.com.br> Em nome de Carlos H. Cantu
> via
> U|I> lista
> U|I> Enviada em: quinta-feira, 8 de setembro de 2022 08:51
> U|I> Para: FireBase <lista em firebase.com.br>
> U|I> Cc: Carlos H. Cantu <listas em warmboot.com.br>
> U|I> Assunto: Re: [firebase-br] Trigger
>
> U|I> Você pode gerar exception tanto em trigger como em procedure, e
> capturar ela
> U|I> com um bloco when...do...
>
> U|I> Mais informações:
> U|I>
> https://ib-aid.com/download/docs/firebird-language-reference-2.5/fblangref25
> U|I> -psql-handleexceptions.html
>
> U|I> []s
> U|I> Carlos H. Cantu
> U|I> eBook Guia de Migração para o FB 4 - www.firebase.com.br/guiafb4.php
> U|I> www.FireBase.com.br - www.firebirdnews.org - blog.firebase.com.br
>
> U|Ivl>> Prezados
>
> U|Ivl>>
>
> U|Ivl>> Em uma trigger, existe alguma forma de executar a instrução
> EXCEPTION
> U|I> onde:
>
> U|Ivl>> 1- não seja exibido mensagens;
>
> U|Ivl>> 2- que o procedimento da trigger seja finalizado?
>
> U|Ivl>>
>
> U|Ivl>> Ou se existe algum outro comando para abandonar a execução de uma
> U|Ivl>> Trigger....
>
> U|Ivl>>
>
> U|Ivl>> Atenciosamente
>
> U|Ivl>>
>
> U|Ivl>> Wagner
>
> U|Ivl>>
>
> U|Ivl>>
>
> U|Ivl>> Saudações
>
> U|Ivl>>
>
> U|Ivl>> Wagner Aranha
>
> U|Ivl>> ______________________________________________
> U|Ivl>> FireBase-BR (www.firebase.com.br) - Hospedado em
> U|Ivl>> www.locador.com.br Para saber como gerenciar/excluir seu cadastro
> na
> U|I> lista, use:
> U|Ivl>> http://www.firebase.com.br/fb/artigo.php?id=1107
> U|Ivl>> Para consultar mensagens antigas:
> U|Ivl>> http://www.firebase.com.br/pesquisa_lista.html
>
>
> U|I> ______________________________________________
> U|I> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para
> U|I> saber como gerenciar/excluir seu cadastro na lista, use:
> U|I> http://www.firebase.com.br/fb/artigo.php?id=1107
> U|I> Para consultar mensagens antigas:
> U|I> http://www.firebase.com.br/pesquisa_lista.html
>
>
> ______________________________________________
> 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://www.firebase.com.br/pesquisa_lista.html
>


--


Mais detalhes sobre a lista de discussão lista