OnCalc fires to often
We do some calculations in the OnCalc-event of a variable
positioned in the detail-band and sum the this variable
to another global one which we are displaying in a group
footer band.
The calculations aren't correct when the report
has more than one page.
After some investigations, we found out, that the
OnCalc-event is triggered more than once for the
last row of a page. The first row of the next page
has then a wrong content.
When we display page number 3 and change back to
page number 2 the first row shows the correct content.
We are using Delphi 5 and ReportBuilder 7.01 Enterprise.
positioned in the detail-band and sum the this variable
to another global one which we are displaying in a group
footer band.
The calculations aren't correct when the report
has more than one page.
After some investigations, we found out, that the
OnCalc-event is triggered more than once for the
last row of a page. The first row of the next page
has then a wrong content.
When we display page number 3 and change back to
page number 2 the first row shows the correct content.
We are using Delphi 5 and ReportBuilder 7.01 Enterprise.
This discussion has been closed.
Comments
The OnCalc may fire more than once, however, because the values are cached
by the report engine, it should work. If you do not store the value in the
variables, then it may become out of sync with the cache manager. The
OnCalcs have to fire more then once in order to support page breaks and
KeepTogether support. It work because the cache manager restores the values
of the variables to the previous value before the page break so that the
next time they calculate, they will do so with the same value as if the
KeepTogether "determination generation" never happened
Cheers,
Jim Bennett
Digital Metaphors
http://www.digital-metaphors.com
info@digital-metaphors.com
Well, in our case we have a sum variable positioned in a group band
and a calculation started in the OnCalc of the detail band and it
becomes
out of sync.
So it seems that the restore logic doesn't work in all cases.
Are the variables of all bands restored or just the variables of the
detail band?
CL
TppVariables? Can you send a simple example to support@digital-metaphors.com
Cheers,
Jim Bennett
Digital Metaphors
http://www.digital-metaphors.com
info@digital-metaphors.com