Fórum como criar essa procedure ? #58261
03/05/2007
0
bom galera,
preciso de uma procedure que atualize o estoque de produtos,
se OPERACAO = E(ENTRADA) atualize para +
se OPERACAO = S(SAIDA) atualize para -
alguma coisa paracido com esse scritp(tentei mais não deu certo)
preciso de uma procedure que atualize o estoque de produtos,
se OPERACAO = E(ENTRADA) atualize para +
se OPERACAO = S(SAIDA) atualize para -
alguma coisa paracido com esse scritp(tentei mais não deu certo)
CREATE PROCEDURE ATUALIZA_ESTOQUE ( codigo_barras bigint, quantidade integer, operacao char(1)) as begin /* Entrada no Estoque */ if (operacao = ´E´) then update produtos p set p.quantidade = p.quantidade + quantidade where p.codigo_barras = codigo_barras; /*Saida do Estoque*/ if (operacao = ´S´) then update produtos p set p.quantidade = p.quantidade - quantidade where p.codigo_barras = codigo_barras; suspend; end;
Fabiano Góes
Curtir tópico
+ 0
Responder
Posts
03/05/2007
Fabiano Góes
galera consegui,
não sei se da melhor maneira mais está atualizando certinho.
eis o script caso alguem necessite:
se alguem tiver alguma solução melhor e quizer apresentar fique a vontade !!!
não sei se da melhor maneira mais está atualizando certinho.
eis o script caso alguem necessite:
CREATE PROCEDURE ATUALIZA_ESTOQUE ( codigo_barras bigint, quantidade integer, operacao char(1)) as declare variable qtde_atual integer; declare variable qtde_atualiza integer; BEGIN select p.quantidade from produtos p where (p.codigo_barras = :codigo_barras) into:QTDE_ATUAL; IF (:OPERACAO = ´E´) THEN qtde_atualiza =: qtde_atual + :quantidade; IF (:OPERACAO = ´S´) THEN qtde_atualiza =: qtde_atual - :quantidade; update produtos p set p.quantidade =:QTDE_ATUALIZA where p.codigo_barras = :codigo_barras; SUSPEND; END^
se alguem tiver alguma solução melhor e quizer apresentar fique a vontade !!!
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)