Erro no Rave reports + delphi 2010

Delphi

23/04/2013

olá amigos,

Tenho vários sistemas que usam o rave report (7.7 BE) com o dephi 2010 para visualização dos relatórios. Só que numa aplicação em específico, está dando access violation ao executar o comando rvProject1.ExecuteReport('relatorio').

O erro ocorre, na 2a. vez que é executado o relatório, quando sai e entra novamente na tela. Assim:

- entra na tela e executa o relatório (1 ou mais vezes -> ok)
- sai da tela e executa o relatório (erro !! access violation)

Ou seja, o erro só ocorre se sair e entrar na tela, tendo executado o relatório anteriormente. O relatório é simples e não possui eventos nem códigos adicionais.

-> já tentei criar novamente os data views e até deletar e recriar o relatório
-> já tentei dar um rvProject1.Open antes de rvProject1.ExecuteReport('relatorio'), e depois close

Alguém já passou por isso??? O incrível é que a aplicação é extremamente simples, assim como o relatório, e somente nela dá o erro, nos outros sistemas tudo ok.
Fernando

Fernando

Curtidas 0

Melhor post

Fernando

Fernando

24/04/2013

pessoal, já consegui resolver o problema, era o seguinte:

- datamodule com os componentes do rave
- tela do relatório (usa herança de form)
- o componente TRvDataSetConnection, propriedade Dataset, estava apontando para o simplesdataset da tela do relatório
- não sei o motivo, mas essa propriedade estava perdendo seu valor, ficava nil ao entrar na tela pela 2a. vez
- em resumo: bastou setar no onShow da tela: RvDataSetConnection.dataset := <dataset_do_datamodule>
GOSTEI 2

Mais Respostas

Ricardo Araujo

Ricardo Araujo

23/04/2013

Coloca a rotina que está usando, assim podemos ver o que está acontecendo!
GOSTEI 0
POSTAR