Procedure update não grava !
26/01/2016
0
Pessoal,
Tenho um procedure para calcular um saldo acumulado de todos os clientes, porem no momento do update não grava o saldo de cada cliente.
Segue abaixo um exemplo e a procedure:
cliente total de venda Acumulado
1 R$ 106.000,00 R$ 106.000,00
2 R$ 100.000,00 R$ 206.000,00
3 R$ 50.000,00 R$ 256.000,00
4 R$ 25.000,00 R$ 281.000,00
5 R$ 10.000,00 R$ 291.000,00
De acordo com o exemplo acima, em cada cliente quero grava essa coluna acumulado.
Procedure
create or alter procedure NEW_PROCEDURE
as
declare variable VENDA double precision;
declare variable ACUMULADO double precision;
declare variable CLIENTE varchar(5);
begin
acumulado = 0;
for select cl.codigo_cliente,cl.crtvendaabc from augc0301 cl where cl.crtvendaabc > 0.01 order by cl.crtvendaabc desc
into :cliente ,:venda
do
begin
acumulado = acumulado + venda;
update augc0301 cl set cl.crtacumulado = :acumulado where cl.codigo_cliente = :cliente;
end
end^
Tenho um procedure para calcular um saldo acumulado de todos os clientes, porem no momento do update não grava o saldo de cada cliente.
Segue abaixo um exemplo e a procedure:
cliente total de venda Acumulado
1 R$ 106.000,00 R$ 106.000,00
2 R$ 100.000,00 R$ 206.000,00
3 R$ 50.000,00 R$ 256.000,00
4 R$ 25.000,00 R$ 281.000,00
5 R$ 10.000,00 R$ 291.000,00
De acordo com o exemplo acima, em cada cliente quero grava essa coluna acumulado.
Procedure
create or alter procedure NEW_PROCEDURE
as
declare variable VENDA double precision;
declare variable ACUMULADO double precision;
declare variable CLIENTE varchar(5);
begin
acumulado = 0;
for select cl.codigo_cliente,cl.crtvendaabc from augc0301 cl where cl.crtvendaabc > 0.01 order by cl.crtvendaabc desc
into :cliente ,:venda
do
begin
acumulado = acumulado + venda;
update augc0301 cl set cl.crtacumulado = :acumulado where cl.codigo_cliente = :cliente;
end
end^
Paulo Olivério
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)