Capturing error of limited hard drive space
Here's an interesting one...
We have a report that, when run in 'detail' mode, pulls a rather larger
dataset into memory (50 to 75 MB). This sometimes forces the use of the
workstation's swap space on the hard drive. We ran the report on a
workstation with a nearly full hard drive (by mistake, oops), and the report
ran without displaying any error messages, but it did not run to completion.
The report was designed to list our customers and their invoicing details,
but only ended up running for about half of the customers (it ended
somewhere in the M's, alphabetically speaking). The really interesting part
is that the report contains a summary band with totals, and the summary band
calced and printed the totals, but just for the customers that made it onto
the report. Of course, these totals did not match the total for the
'summary' version of the report, which is what caused us to notice the
problem in the first place.
Our question is: Is there a data pipeline or report property somewhere that
can be changed to prevent this behavior, or is there some way to force an
error message in similar situations? We would prefer that the detail report
run in "all or nothing" mode, to prevent end user confusion. We (the
developers) were confused for a while, and compared to our end-users we
actually appear more intelligent than most reptiles (although perhaps not
when compared to other developers).
Thanks in advance.
We have a report that, when run in 'detail' mode, pulls a rather larger
dataset into memory (50 to 75 MB). This sometimes forces the use of the
workstation's swap space on the hard drive. We ran the report on a
workstation with a nearly full hard drive (by mistake, oops), and the report
ran without displaying any error messages, but it did not run to completion.
The report was designed to list our customers and their invoicing details,
but only ended up running for about half of the customers (it ended
somewhere in the M's, alphabetically speaking). The really interesting part
is that the report contains a summary band with totals, and the summary band
calced and printed the totals, but just for the customers that made it onto
the report. Of course, these totals did not match the total for the
'summary' version of the report, which is what caused us to notice the
problem in the first place.
Our question is: Is there a data pipeline or report property somewhere that
can be changed to prevent this behavior, or is there some way to force an
error message in similar situations? We would prefer that the detail report
run in "all or nothing" mode, to prevent end user confusion. We (the
developers) were confused for a while, and compared to our end-users we
actually appear more intelligent than most reptiles (although perhaps not
when compared to other developers).
Thanks in advance.
This discussion has been closed.
Comments
eof. Most likely the dataset quit out at some point and returned an eof
signaling RB to wrap up the report. A quick workaround is to raise an error
if something 'doesn't look right' in the report's AfterPrint event based on
the last record traversed (i.e. if the last customer's last name starts with
M.) though of course this would require some foreknowledge of the data being
retrieved.
--
Cheers,
Alexander Kramnik
Digital Metaphors
http://www.digital-metaphors.com
info@digital-metaphors.com