Fórum Problemas com fastreport? #410624
15/12/2011
0
Pessoal estou com um problema com access vioation no fast report na hora de imprimir pela segunda vez.
N ão achei o que não esta sendo destruido ou não criado na segunda vez que tento imprimir.
Os componentes do fast ficam em um datamodule, ja o form que façõ o filtro tem uma query que o dm do fast no componente frxDBDataset1 captura o dataset do query do form que é feito o filtro.
Criei uma procedure para chamar todos relatorios do fast, mais este ai que estou postando, é o problemático.
Chamo assim (Tentei até da formas da linha comentada, achei que um except silencioso resolveria, mais nada adiantou) O maldito erro de AV continua.
#Código
procedure ChamaFastReport(Caminho_FR3: String);
begin
try
DM_FastReport.frxReportGeral.Clear;
DM_FastReport.frxReportGeral.LoadFromFile(Caminho_FR3);
if DM_FastReport.frxReportGeral.PrepareReport then
DM_FastReport.frxReportGeral.ShowPreparedReport;
// DM_FastReport.frxReportGeral.ShowReport;
except
//Vamos dar um except silencioso pra ver no que vai dar.
end;
end;
A linha do erro que gera o AV é esta aqui
#Código
if DM_FastReport.frxReportGeral.PrepareReport then
Em que momento algo ai se perde e não esta sendo criado? Desconfio que o problema esta nos componente que faz acesso diretamente ao query que estão perdendo a referencia na segunda chamada.
Grato a todos que me ajudarem.
N ão achei o que não esta sendo destruido ou não criado na segunda vez que tento imprimir.
Os componentes do fast ficam em um datamodule, ja o form que façõ o filtro tem uma query que o dm do fast no componente frxDBDataset1 captura o dataset do query do form que é feito o filtro.
Criei uma procedure para chamar todos relatorios do fast, mais este ai que estou postando, é o problemático.
Chamo assim (Tentei até da formas da linha comentada, achei que um except silencioso resolveria, mais nada adiantou) O maldito erro de AV continua.
#Código
procedure ChamaFastReport(Caminho_FR3: String);
begin
try
DM_FastReport.frxReportGeral.Clear;
DM_FastReport.frxReportGeral.LoadFromFile(Caminho_FR3);
if DM_FastReport.frxReportGeral.PrepareReport then
DM_FastReport.frxReportGeral.ShowPreparedReport;
// DM_FastReport.frxReportGeral.ShowReport;
except
//Vamos dar um except silencioso pra ver no que vai dar.
end;
end;
A linha do erro que gera o AV é esta aqui
#Código
if DM_FastReport.frxReportGeral.PrepareReport then
Em que momento algo ai se perde e não esta sendo criado? Desconfio que o problema esta nos componente que faz acesso diretamente ao query que estão perdendo a referencia na segunda chamada.
Grato a todos que me ajudarem.
Adriano Dolce
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)