[firebase-br] sql demorando muito

Reijanio Nunes Ribeiro rnribeiro em gmail.com
Sáb Jun 18 10:23:41 -03 2011


bom dia a todos estou om um pequeno problema que é mais ou menos assim,
tenho uma rotina de estorno que faz o seguine

SELECT DISTINCT R.CODCLIENTE, C.NOME, R.FAT_NUM,
R.VLRECEBIDO, R.NUMDOC,R.LANCAMENTO FROM CONTASRECEBIDAS R
INNER JOIN CLIENTE C
ON R.CODCLIENTE = C.CODIGO
WHERE RECEBIMENTO BETWEEN :DT1 AND :DT2

e a chamada é da seguinte forma aqui recebos registros de da tabela contas
recebidas
Estorno.close;
Estorno.Params.ParamByName('DT1').AsDate := dte1.Date;
Estorno.Params.ParamByName('DT2').AsDate := dte2.Date;
Estorno.Open;
dbgrid1.DataSource := DsEstorno;

para pegar o valor semelhante na tabela de contas receber que será alterado
tenho esta senteça

procedure TF_Estorno.receber;
begin
f_dmm.Geral.close;
f_dmm.Geral.CommandText := 'select * from contasreceb where numdoc = :pdoc';
f_dmm.Geral.Params.ParamByName('PDOC').AsString := Estornonumdoc.AsString;
f_dmm.Geral.Open;
Edit1.Text := f_dmm.Geral.FieldByName('FAT_NUM').AsString;
Edit2.Text := CurrToStr(f_dmm.Geral.FieldByName('vlrtotal').AsCurrency);
Edit3.Text := CurrToStr(f_dmm.Geral.FieldByName('vlrecebido').AsCurrency);
Edit4.Text := CurrToStr(f_dmm.Geral.FieldByName('vlrestante').AsCurrency);
Edit5.Text := CurrToStr(Estorno.FieldByName('vlrecebido').AsCurrency);
end;


e para estornar tenho a seguinte sentença

procedure TF_Estorno.estorno_receber;
begin
f_dmm.Geral.Close;
f_dmm.Geral.CommandText := 'UPDATE CONTASRECEB SET FAT_NUM  = :PFAT,
VLRECEBIDO = VLRECEBIDO - :PREC,'+
' VLRESTANTE = VLRESTANTE + :PREST, STATUS =:PS';
f_dmm.Geral.Params.ParamByName('PFAT').AsString := Edit1.Text;
f_dmm.Geral.Params.ParamByName('PREC').AsCurrency := StrToCurr(Edit5.text);
f_dmm.Geral.Params.ParamByName('PREST').AsCurrency := StrToCurr(Edit5.text);
f_dmm.Geral.Params.ParamByName('PS').AsString := 'P';
f_dmm.Geral.Execute;
 Estorno.Delete;
 Estorno.ApplyUpdates(0);
end;

alguem pode me ajudar



Mais detalhes sobre a lista de discussão lista