Fórum Possível bug no ReportBuilder 10.02 Enterprise com Delphi 7 #355287
12/03/2008
0
Em um dos relatórios, há um cálculo realizado na banda Summary. Este cálculo é feito no evento BeforePrint da mesma banda. Pois bem, o que ocorre é que este cálculo, quando mostrado em tela, aparece com seu valor correto. Porém quando impresso aparece com o valor duplicado (exatamente o dobro).
Em diversos testes realizados, foi constatado que o evento BeforePrint da banda Summary é chamado no momento em que o relatório é gerado na tela e *TAMBÉM* no momento que antecede a impressão em papel.
Este funcionalismo é inaceitável pois produz resultados não-confiáveis. E é apenas lógico se utilizar da banda Summary (ou Detail ou alguma outra banda de algum SubReport) para se realizar cálculos.
Gostaria de saber dos prezados desenvolvedores se alguém já se deparou com semelhante ´erro´ usando o ReportBuilder, e, se sim, qual a medida tomada (sem ser mudança de componente).
Grato.
Bernardolopes
Curtir tópico
+ 0Posts
14/03/2008
Uildenei
Gostei + 0
14/03/2008
Bernardolopes
De qualquer forma, postei esta mesma questão no mailing list oficial do report builder e a resposta foi que o evento BeforePrint não é confiável para cálculos, pois o mesmo é executado diversas vezes por variadas razões.
Conclusão: é inevitável o uso do componente TppVariable. Então, acabei por usar este componente e configurei suas propriedades (LookAhead, Timing..., Value, etc) de acordo. Agora sim funciona.
Não usei TppVariable antes porque estava adaptando o relatório de um outro relatório anterior feito com o Fortes e não queria alterar a mecânica do mesmo. E neste relatório anterior o cálculo era executado no BeforePrint da banda sem problemas. Porém no ReportBuilder é diferente.
Obrigado de qualquer forma pela resposta.
Abraços.
Gostei + 0
14/03/2008
Uildenei
é por isso que perguntei, por que eu utilizo o RB ha muito tempo .. e nao tinha me deparado com problemas dessa natureza .. e tambem os relatorios que eu utilizo tem calculos de variadas formas.
os meios de efetuar os calculos variam muito tambem portanto, a titulo de conselho, é mais pratico e coerente utilizar TppVariable ou DBCalc pra efetuar calculos e controlar no objeto o zeramento/reinicio e o tempo de calculo.
Gostei + 0
08/05/2008
Neodir
Anteriormente trabalhava com a versão 9.01 e estava tudo ok qdo migrei para versão do RB 10.02 ´bingo´ ´Erro´... e apresenta uma mensagem de sistema corrompido.
Grato.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)