Fórum Problemas ClientDataset QuickReport #224911
08/04/2004
0
Olá pessoal...
Estou desenvolvendo um módulo de relatório em meu sistema.
Esse módulo tem diversos filtros e existe a necessidade do resultado aparcer antes em um dbgrid. Até aí tudo bem, o problema é que em uma das opções de impressão, deve ser impresso todo o conteúdo atual do clientdataset. O meu problema está justamente aí, já que como esse mesmo clientdataset está ligado a um dbgrid, quando mando um preview ele percorre registro por registro do dbgrid, tornando muito mais lenta a aplicação...
Pra tentar contornar, eu coloquei um clientdataset vazio no relatório e antes do preview coloquei a seguinte linha de comando:
frmrelatorio.clientdataset1.data := frmatual.clientdataset1.data;
E com isso, ele vai com bugs, como campos monetários com valores loucos etc...
Alguém tem alguma solução mais funcional?
Obs.: Não quero utilizar o relatório diretamente ligado a um dataset. Preciso que seja ligado a um clientdataset mesmo...
Desde já agradeço...
Estou desenvolvendo um módulo de relatório em meu sistema.
Esse módulo tem diversos filtros e existe a necessidade do resultado aparcer antes em um dbgrid. Até aí tudo bem, o problema é que em uma das opções de impressão, deve ser impresso todo o conteúdo atual do clientdataset. O meu problema está justamente aí, já que como esse mesmo clientdataset está ligado a um dbgrid, quando mando um preview ele percorre registro por registro do dbgrid, tornando muito mais lenta a aplicação...
Pra tentar contornar, eu coloquei um clientdataset vazio no relatório e antes do preview coloquei a seguinte linha de comando:
frmrelatorio.clientdataset1.data := frmatual.clientdataset1.data;
E com isso, ele vai com bugs, como campos monetários com valores loucos etc...
Alguém tem alguma solução mais funcional?
Obs.: Não quero utilizar o relatório diretamente ligado a um dataset. Preciso que seja ligado a um clientdataset mesmo...
Desde já agradeço...
Wilder_lopes
Curtir tópico
+ 0
Responder
Posts
08/04/2004
Wilder_lopes
Fala Pessoal...
Consegui encontrar a solução:
Em vez de usar:
frmrelatorio.clientdataset1.Data := frmatual.clientdataset1.data;
É só usar:
frmRelatorio.CloneCursor(frmAtual.Clientdataset1,...,[...]);
Sendo que os dois ultimos parametros são configurados conforme necessidade, sendo assim, olhem no help e façam da forma conveniente...
Deu uma boa ajuda!
Consegui encontrar a solução:
Em vez de usar:
frmrelatorio.clientdataset1.Data := frmatual.clientdataset1.data;
É só usar:
frmRelatorio.CloneCursor(frmAtual.Clientdataset1,...,[...]);
Sendo que os dois ultimos parametros são configurados conforme necessidade, sendo assim, olhem no help e façam da forma conveniente...
Deu uma boa ajuda!
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)