Contatenar string à Exception

Firebird

30/05/2008

Boa Noite Pessoal,
Estou fazendo um trabalho simples de um banco de dados mas me ocorreu uma dúvida na qual eu não lembro como resolver.
Eu criei uma exception padrão chamada EXCEP_EXCLUIR com a mensagem ´O registro não pode ser excluído.´.
Aí na minha trigger eu verifico as dependências do cadastro como por exemplo vendas e financeiro, sendo que a mensagem de erro eu queria que fosse, por exemplo ´O registro não pode ser excluído. Verifique o Financeiro´.
Eu tentei fazer assim:
...
IF (COUNTFIN > 0)
  EXCEPTION EXCEP_EXCLUIR ´ Verifique o Financeiro´;
Mas na hora só aparece ´ Verifique o Financeiro´. Tem como concatenar uma String ao gerar uma exception? Aproveitando o tópico, como quebra linha no texto da exception? \n, #13?


Marcosrocha

Marcosrocha

Curtidas 0

Respostas

Emerson Nascimento

Emerson Nascimento

30/05/2008

você omitiu o ´caracter´ de concatenação e não deu erro?

teoricamente seria
EXCEPTION EXCEP_EXCLUIR [b:d6875a2a5f]||[/b:d6875a2a5f] ´ Verifique o Financeiro´;
poré, eu não sei se funciona com exceptions.


GOSTEI 0
Marcosrocha

Marcosrocha

30/05/2008

No FB tanto faz || ou + deu no mesmo resultado.
´EXCEPTION EXCEP_EXCLUIR + ´ Verifique o Financeiro´;´ e ´EXCEPTION EXCEP_EXCLUIR || ´ Verifique o Financeiro´;´ fazem apenas aparecer a frase que eu concatenei e eu sei que tem como mostrar as duas, mas não lembro como.


GOSTEI 0
Emerson Nascimento

Emerson Nascimento

30/05/2008

veja [url=http://forum.devmedia.com.br/viewtopic.php?t=73943]esse tópico[/url]. fala em concatenação simples.



.


GOSTEI 0
Marcosrocha

Marcosrocha

30/05/2008

Desculpa a minha Insistência e Ignorância mas || não está funcionando...
Segue o Script da minha trigger
CREATE TRIGGER TD_VEICULO FOR VEICULO
ACTIVE BEFORE DELETE POSITION 0
AS
  DECLARE VARIABLE NCOUNT INTEGER;
BEGIN
  SELECT COUNT(VEI_CODIGO) FROM VEICMANUT
  WHERE VEI_CODIGO = OLD.VEI_CODIGO
  INTO NCOUNT;
  IF (NCOUNT > 0) THEN
  BEGIN
    EXCEPTION EXCEP_VEICULO ´ VERIFIQUE MANUTENÇÕES´;
  END
  SELECT COUNT(VEI_CODIGO) FROM VEICPREVISAO
  WHERE VEI_CODIGO = OLD.VEI_CODIGO
  INTO NCOUNT;
  IF (NCOUNT > 0) THEN
  BEGIN
    EXCEPTION EXCEP_VEICULO ´O VEÍCULO NÃO PODE SER EXCLUÍDO. VERIFIQUE PREVISÃO DE MANUTENÇÕES´;
  END
  SELECT COUNT(VEI_CODIGO) FROM VEICUTIL
  WHERE VEI_CODIGO = OLD.VEI_CODIGO
  INTO NCOUNT;
  IF (NCOUNT > 0) THEN
  BEGIN
    EXCEPTION EXCEP_VEICULO ´O VEÍCULO NÃO PODE SER EXCLUÍDO.  VERIFIQUE UTILIZAÇÃO DE VEÍCULOS´;
  END
END



GOSTEI 0
POSTAR