cancel
Showing results for 
Search instead for 
Did you mean: 

Loss of parameters after drilldown/drillup

Former Member
0 Kudos

Hello,

We have a .NET application which creates a Crystal Report Viewer object on one of its pages. The parameters for this object are set via code. When the Viewer object first loads, it shows correct parameters and values. After a drilldown event, the parameters seem to be lost and default parameters are used instead. What are we doing wrong here? Should we reload the parameters or refresh the report on each drilldown / drillup event?

- Kevat

Accepted Solutions (1)

Accepted Solutions (1)

former_member183750
Active Contributor
0 Kudos

This sounds like you are working with a web app(?). If that is the case, I'd suspect incorrect use of Post Backs?

What version of CR?

What CR Service Packs have been applied?

What version of .NET?

What OS?

- Ludek

Follow us on Twitter

Got Enhancement ideas? Try the SAP Idea Place

Share Your Knowledge in SCN Topic Spaces

Former Member
0 Kudos

I have the same problem also occurring during page navigation.

When I add the code: CrystalReportViewer1.Refresh(), in the navigation and drill events, I can see the newer data. However, changing each page takes a long time (almost as if the entire report was being run again).

I have enabled viewStatemode and was assuming that would be enough. I cannot use Session variables to store the viewer object for 2 reasons:

1. My .NET Application runs in "StateServer" mode, which requires all Session objects to be serializable; The viewer is, by default, not serializable

2. We have some extremely large reports. Saving these reports as session variables could lead to memory management issues.

We have used CR XI-2 to create the reports, and CR SDK 13.0.2 along with Visual Studio 2010 to make our web application which contains the CrystalReportViewer object. We are currently running Windows 7 on our web server.

What should I do? What is the best way to get page navigation without slowing the viewer down and without requiring a large amount of memory?

- Kevat

former_member183750
Active Contributor
0 Kudos

Hello Kevat

This is going to be a hard message, but an honest one.

Almost any action (and certainly paging, drill down, etc.) on the report will cause a post back and thus performance hits.  Since you are not able to put these reports into a session and the reports are so large, I'd suggest that your approach needs a rethink. E.g.; running large reports over the web is in and of it's self a questionable strategy. Couple of options;

1) Obtain SAP Crystal Reports server and schedule these reports. Then let the users retrieve the completed instances of the scheduled reports. (If you need to make these reports look like they are running on demand, you can schedule the report to run right now, get the CRS to send a message to the user that the report can be viewed when the report is finished processing.)

2) Use your current app. Run the report in the background when requested by the user. Export it to RPT format - this report will have saved data. When the report is done, display the report in the viewer. This is essentially mimicking (1) above.

The main difference between (1) and (2) is that the CRS is way more scalable and the solution would in some eyes be more "elegant"....

- Ludek

Answers (0)