[firebase-br] Loop em Procedures
Eliomar
eliomar em promediconet.com.br
Qua Jul 27 13:27:31 -03 2005
Vc não colocou nenhum parametro de retorno então
já não precisa do suspend.
if (data_cx >= data_atual ) then
Aqui quando vc faz o teste de uma data com a outra
se a data-cx for null então vai dar erro e a sp não vai
continuar...
Pessol, bom dia a todos.
Estou com problemas na execucao de uma Procedure, onde preciso fazer um Loop no resultado do select, todavia a procedure retorna erro e nao executa as devidas insercoes.
Subscrevo a Procedure para que os senhores na medida de suas possibilidades possa analisar, Obrigado.
-------------------------------------------------------------------------------------------------------------------------------------------------------------
CREATE PROCEDURE PROC_ABERTURA_CAIXA (
DATA_ATUAL DATE)
AS
DECLARE VARIABLE DATA_CX DATE;
DECLARE VARIABLE SALDO_CX NUMERIC(18,2);
DECLARE VARIABLE PRODUTO SMALLINT;
begin
select first 1 a.data from mvto_caixa a
where a.data = :data_atual
into :DATA_CX;
if (data_cx >= data_atual ) then
begin
Exception Erro_Abertura_Caixa;
suspend;
end
select max(a.data) from mvto_caixa a
where a.data < :data_atual
into :data_cx;
for select cd_produto from produtos
into :produto
do
begin
suspend;
select b.data, b.saldo_fin_enc from mvto_caixa b
where b.data = :data_cx
and b.cd_produto = :produto
into :data_cx, :saldo_cx;
INSERT INTO MVTO_CAIXA
(data, cd_produto, saldo_ini_enc, saldo_fin_enc, saldo_ini_fut, saldo_fin_fut)
VALUES
(:data_cx, :produto, :saldo_cx, :saldo_cx,0,0);
end
suspend;
end
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
Para editar sua configuração na lista, use o endereço http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa
Agradecido.
Eliomar,
ICQ - 167715482
MSN - eliomar0910 em hotmail.com
Soft-Data Softwares Administrativos
hptt://www.promediconet.com.br
Mais detalhes sobre a lista de discussão lista