[firebase-br] to precisando muito de uma ajuda com uma trigger

Reijanio Nunes Ribeiro rnribeiro em gmail.com
Ter Jun 1 11:27:02 -03 2010


quero que ao alterar o status da ordem de esrviço ela altere a quantidade,
de produtos reservados

Em 01/06/10, Ederson R. F. Lima <ed.rodrigo em gmail.com> escreveu:
>
> O que você quer que sua Trigger faça!?
> Qual a mensagem de erro que você recebe?
>
> Coloque essas informações e será bem mais fácil te ajudar.
>
> Att,
>
> 2010/6/1 Reijanio Nunes Ribeiro <rnribeiro em gmail.com>
>
> > a sintaxe é a seguinte
> >
> > CREATE OR ALTER TRIGGER TRG_STATUS_OS FOR D_SERVICO_OS
> > ACTIVE BEFORE UPDATE POSITION 0
> > as
> > declare variable v_status char(1);
> > declare variable codprod varchar(18);
> > declare variable qtde numeric(10,2);
> > declare variable local char(3);
> > declare variable emp integer;
> > begin
> > codprod = new.codprod;
> > qtde = new.qtde;
> > local = new.cod_local;
> > emp = new.cod_emp;
> >
> > select STATUS from c_ordemservico
> > where codigo = new.cod_os
> > into :v_status;
> >
> > select d.codprod, d.qtde from d_servico_os d
> > where d.cod_os = new.cod_os
> > into :codprod,:qtde;
> >
> > if (:v_status = 'A')then
> >    update estoque e set
> >    e.qtde_reserv = e.qtde_reserv + :qtde,
> >    e.saldo = e.qtde_disp - e.qtde_reserv
> >    where e.codprod = :codprod and e.cod_local = :local and e.cod_emp =
> > :emp;
> >
> > if (:v_status = 'F')then
> >    update estoque e set
> >    e.qtde_reserv = e.qtde_reserv - :qtde,
> >    e.saldo = e.qtde_disp - e.qtde_reserv
> >    where e.codprod = :codprod and e.cod_local = :local and e.cod_emp =
> > :emp;
> >
> > if (:v_status = 'C')then
> >    update estoque e set
> >    e.qtde_reserv = e.qtde_reserv - :qtde,
> >    e.saldo = e.qtde_disp - e.qtde_reserv
> >    where e.codprod = :codprod and e.cod_local = :local and e.cod_emp =
> > :emp;
> >
> >    end
> >
> > na realidade acho que o erro é que nem sempre mexo nos itens na realidade
> o
> > que deve lterar a quantidade reservada é esse v_status que fica na tabela
> > c_ordem serviço se algume puder me ajudar a refazer essa trigger ficarei
> > grato
> > ______________________________________________
> > 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://firebase.com.br/pesquisa
> >
>
>
>
> --
> - Éderson R. F. Lima
> -- Engenharia da Computação / 9º Termo
> --- Araçatuba/SP
> ______________________________________________
> 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://firebase.com.br/pesquisa
>



Mais detalhes sobre a lista de discussão lista