Re: [firebase-br] Triggers - Verificação com problemas...

Valdir Marcos valdir.marcos em ig.com.br
Sex Out 14 13:59:32 -03 2005


Simples, criei uma variável para saber se já existe "endereço T".
Depois, faz um Select X From CAD_ENDERECO where Y into :Variável;
Agora, é só vc testar essa variável para saber se precisa incluir o endereço 
ou não.

Um abraço,

Valdir Marcos

----- Original Message ----- 
From: "Francisco Thiago" <jeandeadlucky em yahoo.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Friday, October 14, 2005 10:01 AM
Subject: [firebase-br] Triggers - Verificação com problemas...


> (Desculpem qqr digitacao errada.. tive um problema com a moto que atingiu 
> as maos)
>
> Pessoal. Preciso de uma sugestão (tenho pedido de mais né?)
>
> No cadastro de enderecos, eu preciso sempre ter pelo menos um que seja de 
> cobranca (cobranca = 'T')
>
> Entao fiz uma trigger assim:
>  declare variable V_ENDERECO integer;
> begin
>  V_ENDERECO = 0;
>  if (new.CEND_COBRANCA = 'T') then
>  begin
>    select count(CEND_COBRANCA)
>    from CAD_ENDERECO
>    where CAD_ENDERECO.PESS_CODIGO = new.PESS_CODIGO
>      and CAD_ENDERECO.CEND_CODIGO <> new.CEND_CODIGO
>      and CAD_ENDERECO.CEND_COBRANCA = 'T'
>    into :V_ENDERECO;
>  end
>  else if (new.CEND_COBRANCA = 'F') then
>  begin
>    select count(CEND_COBRANCA)
>    from CAD_ENDERECO
>    where CAD_ENDERECO.PESS_CODIGO = new.PESS_CODIGO
>      and CAD_ENDERECO.CEND_CODIGO <> new.CEND_CODIGO
>      and CAD_ENDERECO.CEND_COBRANCA = 'T'
>    into :V_ENDERECO;
>  end
>
>  if ((V_ENDERECO > 0) and (new.CEND_COBRANCA = 'T')) then
>    exception E_ENDERECO_COBRANCA ;
>  else if ((V_ENDERECO <= 0) and (new.CEND_COBRANCA = 'F')) then
>    new.CEND_COBRANCA = 'T';
>
> Até aqui tudo bem, mas quando o usuário (só pra me sacanear) insere nesta 
> sequencia:
>
> Cobranca = 'F'
> Cobranca = 'T'
>
> Dá problema pq ele duplica a informacao. Alguém teria alguma sugestão?
>
>
>
> Obrigado
>
>
> Francisco Thiago de Almeida
> Enter & Plug Informática
> Divisão: Desenvolvimento e Banco de dados
> Franca / SP
> msn: thiago em enterplug.com.br
>
>
>
>
>
>
>
> _______________________________________________________ Promoção Yahoo! 
> Acesso Grátis: a cada hora navegada você acumula cupons e concorre a mais 
> de 500 prêmios! Participe! http://yahoo.fbiz.com.br/
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço 
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
> 





Mais detalhes sobre a lista de discussão lista