[firebase-br] erro em trigger

Reijanio Nunes Ribeiro rnribeiro em gmail.com
Seg Jan 21 19:14:06 -03 2008


mito obrigado pelos esclarecimentos eduardo vlew mesmo

Em 21/01/08, Eduardo Bahiense <eduardo em icontroller.com.br> escreveu:
>
> Olá Reijanio
>
> Não precisa. O caso é que você faz operação artmética com QTDE sem
> verificar se o valor passado não é nulo (PRODUTO.estoque + new.qtde).
> Quando você colocou o default para zero, resolveu o problema.
> Se você tivesse feito PRODUTO.estoque + coalesce(new.qtde,0) também
> daria certo. Da mesma forma se você testasse antes de tudo "IF new.qtde
> IS NOT NUL THEN ..." também daria.
>
> Abs
>
>
> Eduardo
>
>
> Reijanio Nunes Ribeiro escreveu:
> > gente não sabia que pra usar trigger tinha que colocar um valor default
> no
> > campo, depois que coloquei o campo QTDE default 0 deu certo e atualiza
> sem
> > problemas, alguem sabe me dizer pq isso
> >
> > Em 21/01/08, Reijanio Nunes Ribeiro <rnribeiro em gmail.com> escreveu:
> >> magno ja ta after insert olha so
> >> CREATE TRIGGER ATUALIZAESTOQUE_BI0 FOR D_NFENTRADA
> >> ACTIVE AFTER INSERT POSITION 0
> >>
> >> Em 21/01/08, Magno System < magno em speet.com.br> escreveu:
> >>> Será que se você fizesse essa trigger AFTER INSERT não daria ???
> >>>
> >>> EMPRESA: Marcelo Guimarães Nogueira
> >>> NOME FANTASIA: Magno System
> >>> ENDEREÇO: Rua Oliveira Leite, 66 - Centro - Passa Quatro - MG
> >>> EMAIL: magno em speet.com.br
> >>> CNPJ: 07.693.076 /0001-99
> >>>
> >>> Marcelo Guimarães Nogueira
> >>> Magno System (Empresa Desenvolvedora de Software)
> >>> ----- Original Message -----
> >>> From: "Reijanio Nunes Ribeiro" <rnribeiro em gmail.com >
> >>> To: "FireBase" <lista em firebase.com.br>
> >>> Sent: Monday, January 21, 2008 3:00 PM
> >>> Subject: [firebase-br] erro em trigger
> >>>
> >>>
> >>> pessoal boa tarde estou com um problema e acho q vc'sa podem me
> ajudar:
> >>> seguinte criei uma trigger q atualiza meu saldo em estoque testei no
> >>> ibexpert e teve sucesso agora seguinte n acontece nada na tabela de
> >>> produtos
> >>> poderia me dizer o que pode estar dando errado, a sintase do gatinho é
> >>> assim:
> >>>
> >>> CREATE TRIGGER ATUALIZAESTOQUE_BI0 FOR D_NFENTRADA
> >>> ACTIVE AFTER INSERT POSITION 0
> >>> AS
> >>> begin
> >>> UPDATE PRODUTO SET PRODUTO.estoque =  PRODUTO.estoque + new.qtde
> >>> WHERE PRODUTO.codigo = new.codprod ;
> >>> /* so lembrando que codigo é o campo codigo do produto  da tabela
> >>> PRODUTO
> >>> e codprod é o codigo do produto da tabela D_NFENTRADA*/
> >>> end
> >>>
> >>> o que poderia estar dando errado que qdo dou o insert na
> >>> tabela  D_NFENTRADA
> >>> o campo
> >>> estoque não é atualizado na tabela PRODUTO
> >>>
> >>> uso delphi 2006/firebird/dbexpress
> >>> desdee ja agradeço
> >>> ______________________________________________
> >>> FireBase-BR ( www.firebase.com.br) - Hospedado em www.locador.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
> >>>
> >>>
> >>> --
> >>> No virus found in this incoming message.
> >>> Checked by AVG Free Edition.
> >>> Version: 7.5.516 / Virus Database: 269.19.6/1230 - Release Date:
> >>> 17/1/2008
> >>> 16:59
> >>>
> >>>
> >>>
> >>> ______________________________________________
> >>> FireBase-BR ( www.firebase.com.br) - Hospedado em www.locador.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
> >>>
> >>
> > ______________________________________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.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
> >
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.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