We are developing a VB.NET database application, using windows forms and
Microsoft Access.
The application requires dynamic reports, where the users change data on the
forms, if a report is being shown it will automatically update.
To do this we are using the .NET crystal report viewer, which loads a
crystal report that we set it's data source at runtime using a dataset. If
the user changes data on the data collection form, we update the dataset and
refresh the reports data source.
The problem we are getting it's with the memory overhead. When we first show
the form containing the crystal viewer control, an additional 20Mb of memory
is allocated. Every time the report is then refreshed with the updated
dataset, 1-2Mb is added to the memory each time. If we close the report
viewer form, none of the memory is ever recovered. If the report is displayed
again, the memory keeps increasing with every refresh.
Is there a way to release the memory used by the crystal viewer, or is this
a know issue. If it is an issue does anyone have any better alternative to
crystal reports?
Any advise would be appreciated.