Up to your questions:
1. There is no out-of-the-box solution for handling the errors that would occur during report processing on a global level. Each reports handles its own errors in Report.Error event, as you have already noticed. A possible solution would be to inherit all the Report classes from a common class that handles the Error event and provides logging to ELMAH. Another solution is to create a custom TraceListener
, attach it to the application configuration file and set it up so it would catch only exceptions thrown from Telerik.Reporting classes. Another option is to handle the exceptions on application level, as shown here
2. The errors that occur during report item processing do not bubble up to the report viewer by design. The report viewer shows only errors that are related with the report processing and rendering as a whole entity - for example, when the connection to the database is invalid, the report source is not set or the rendering extensions is unavailable. However, instead of overwriting the stack trace, you can load a small report with a friendly error message in the viewer. The reports are loaded asynchronously, so changing the report viewer's report source will immediately load the report with the generic error message. This approach is similar to the way web servers show a single error page when a 404. Not Found
Hope this helps.
Do you want to have your say when we set our development plans?
Do you want to know when a feature you care about is added or when a bug fixed?
Telerik Feedback Portal
and vote to affect the priority of the items