Fórum Update Condição #42161
05/02/2004
0
Preciso colocar uma condição no update de uma trigger:
Se C.MOVESTOQUE que é uma campo da tabela USOCONSUMO for ´N´ atualizar apenas o CUSTO e não atualizar o ESTOQUE.
Teria como fazer esta condição dentro do update, em uma única instrução?
Se não qual a melhor maneira?
CREATE TRIGGER ´Estoq Ped Consumo INS´ FOR ENTRADAMATPRIMACONSUMO
ACTIVE AFTER INSERT POSITION 0
as
begin
update USOCONSUMO C
set C.ESTOQUE = C.ESTOQUE + NEW.QUANT,
C.CUSTO = NEW.CUSTO
where NEW.CODBARRA = C.CODIGO;
end
Se C.MOVESTOQUE que é uma campo da tabela USOCONSUMO for ´N´ atualizar apenas o CUSTO e não atualizar o ESTOQUE.
Teria como fazer esta condição dentro do update, em uma única instrução?
Se não qual a melhor maneira?
CREATE TRIGGER ´Estoq Ped Consumo INS´ FOR ENTRADAMATPRIMACONSUMO
ACTIVE AFTER INSERT POSITION 0
as
begin
update USOCONSUMO C
set C.ESTOQUE = C.ESTOQUE + NEW.QUANT,
C.CUSTO = NEW.CUSTO
where NEW.CODBARRA = C.CODIGO;
end
Lucianoko
Curtir tópico
+ 0
Responder
Posts
05/02/2004
Elbio
Se estiver usando FB 1.5 tente o seguinte:
update USOCONSUMO C
set C.ESTOQUE = C.ESTOQUE + (case C.MOVESTOQUE when ´N´ then 0 else NEW.QUANT end),
C.CUSTO = NEW.CUSTO
where NEW.CODBARRA = C.CODIGO;
Deve dar certo...
Elbio.
update USOCONSUMO C
set C.ESTOQUE = C.ESTOQUE + (case C.MOVESTOQUE when ´N´ then 0 else NEW.QUANT end),
C.CUSTO = NEW.CUSTO
where NEW.CODBARRA = C.CODIGO;
Deve dar certo...
Elbio.
Responder
Gostei + 0
06/02/2004
Lucianoko
Caro colega,
Quando foi criar a trigger deu erro e o cursor parou no CASE.
Se tiver outra idéia.
t+
Quando foi criar a trigger deu erro e o cursor parou no CASE.
Se tiver outra idéia.
t+
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)