Procedure atualiza estoque
Estou tendo problema na criação da procedure.
Erro = uncknow colum quantanterior
set term ! ;
create procedure sp_estoque
(
codproduto integer,
quantidade numeric (9,2),
valor numeric (9,2)
)
as
declare variable quantanterior numeric (5,2);
begin
for select quant_prod from produto where cod_prod= :codproduto
into quantanterior do
update produto
set quant_prod = quantanterior + :quantidade, ultcomp_prod= current_date,
custo_prod= :valor
where cod_prod= :codproduto;
suspend;
end!
set term ; !
O que há de errado no codigo acima?
Erro = uncknow colum quantanterior
set term ! ;
create procedure sp_estoque
(
codproduto integer,
quantidade numeric (9,2),
valor numeric (9,2)
)
as
declare variable quantanterior numeric (5,2);
begin
for select quant_prod from produto where cod_prod= :codproduto
into quantanterior do
update produto
set quant_prod = quantanterior + :quantidade, ultcomp_prod= current_date,
custo_prod= :valor
where cod_prod= :codproduto;
suspend;
end!
set term ; !
O que há de errado no codigo acima?
Midas
Curtidas 0
Respostas
Afarias
22/10/2003
qualquer parâmetro (de entrada ou saida) ou variável -- quando citada em um comando SQL (select, update, delete ou insert) -- deve ser precedido por dois-pontos (:) ::
for select quant_prod from produto where cod_prod = :codproduto
into quantanterior do // <== erro (devia ser :quantanterior)
pois quantanterior é uma variável.
T+
for select quant_prod from produto where cod_prod = :codproduto
into quantanterior do // <== erro (devia ser :quantanterior)
pois quantanterior é uma variável.
T+
GOSTEI 0
Midas
22/10/2003
Bingo !!!! Mesmo que esta variavel seja apenas interna da procedure?
Não sabia. muito obrigado.
Não sabia. muito obrigado.
GOSTEI 0
Afarias
22/10/2003
|Mesmo que esta variavel seja apenas interna da procedure?
pois é! :)
T+
pois é! :)
T+
GOSTEI 0