Fórum QuickReport #218704
05/03/2004
0
Olá colegas,
tenho um relatório desenvolvido no Quick Report do Delphi 5. O Relatório é feito através de comandos SQL com os componentes Querys. Já desenvolvi alguns relatórios, mas nuca tive o problema que estou tendo agora. O relatório que estou fazendo é relativamente pesado. Num Atlon XP 2600 com 256 de RAM ele demora aproximadamente 15 segundos para ficar pronto. Quando você chama o relatório ele funciona certo. O que ocorre é que se após a finalização do relatório você solicitar ele novamente também saíra correto. O problema surge após a segunda vez que você chamar ele. Na terceira vez ele trava e vc precisa fechar o sistema e abrir ele novamente. O processo se repete sempre. Até a segunda vez tudo bem. Depois surge o problema.
Se alguém puder me ajudar, serei muito grato.
tenho um relatório desenvolvido no Quick Report do Delphi 5. O Relatório é feito através de comandos SQL com os componentes Querys. Já desenvolvi alguns relatórios, mas nuca tive o problema que estou tendo agora. O relatório que estou fazendo é relativamente pesado. Num Atlon XP 2600 com 256 de RAM ele demora aproximadamente 15 segundos para ficar pronto. Quando você chama o relatório ele funciona certo. O que ocorre é que se após a finalização do relatório você solicitar ele novamente também saíra correto. O problema surge após a segunda vez que você chamar ele. Na terceira vez ele trava e vc precisa fechar o sistema e abrir ele novamente. O processo se repete sempre. Até a segunda vez tudo bem. Depois surge o problema.
Se alguém puder me ajudar, serei muito grato.
Vanp
Curtir tópico
+ 0
Responder
Posts
05/03/2004
Joilson_gouveia
vanp,
Talvez vc precise limpar o relatório completamente da memória chamando o método FREE, pois se o mesmo é tão pesado assim, deve causar esvaziamento da memória após a terceira chamada.
Eu costumo usar relatórios assim:
[color=green:6ad82ae286]Relat1 := TRelat1.Create;
with Relat1 do
begin
Query1.ParamByname(´Codigo´).AsInteger := 1;
Query1.Open;
Preview;
Query1.Close;
Free;
end;[/color:6ad82ae286]
Talvez vc precise limpar o relatório completamente da memória chamando o método FREE, pois se o mesmo é tão pesado assim, deve causar esvaziamento da memória após a terceira chamada.
Eu costumo usar relatórios assim:
[color=green:6ad82ae286]Relat1 := TRelat1.Create;
with Relat1 do
begin
Query1.ParamByname(´Codigo´).AsInteger := 1;
Query1.Open;
Preview;
Query1.Close;
Free;
end;[/color:6ad82ae286]
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)