cancel
Showing results for 
Search instead for 
Did you mean: 

Help with print progress in Crystal Reports 2008 and the .NET viewer/API

Former Member
0 Kudos

First, I'd like to find out if there is a way to have the CrystalReportsViewer to show the progress of how many records have been read and how many have been placed on the report as the old viewer in 8.5.

Another issue I have is finding out how many records have been exported after the report has been created. The ReportDocument::Rows::Count doesn't return the number of rows that were exported. I'd like to get this for internal reporting. The 8.5 API had a way to get this value.

Another issue I have with the viewer is that in 8.5, you could stop processing from the viewer. Did this get removed in 2008?

Accepted Solutions (0)

Answers (1)

Answers (1)

former_member183750
Active Contributor
0 Kudos

As per the Rules of Engagement, one question per thread please.

First, I'd like to find out if there is a way to have the CrystalReportsViewer to show the progress of how many records have been read and how many have been placed on the report as the old viewer in 8.5.

- No there is not. If this is of any importance, please consider adding this to the SAP Idea Place, so it can be considered for a future version of CR. If you do add this to the Idea place, I'll tweet it to get as many "up" votes as possible.

Another issue I have is finding out how many records have been exported after the report has been created. The ReportDocument::Rows::Count doesn't return the number of rows that were exported. I'd like to get this for internal reporting. The 8.5 API had a way to get this value.

- I just tested this with:

 

x = crReportDocument.Rows.Count()

MessageBox.Show(x)

and consistently got the correct number of rows(?).

When you say: "Count doesn't return the number of rows that were exported", what do you get returned?

Another issue I have with the viewer is that in 8.5, you could stop processing from the viewer. Did this get removed in 2008?

- Yes. Again, SAP Idea Place.

- Ludek

Follow us on Twitter

Got Enhancement ideas? Try the SAP Idea Place

Share Your Knowledge in SCN Topic Spaces

Former Member
0 Kudos

Every time I've run a report the document.Rows.Count property only returned 1 if 1 or more record(s) were returned or 0 if no records qualified. I could have a report that returned 10,000 records and still the document.Rows.Count would render 1.

As for the things you're saying I should add to the "SAP Idea Place", they were core features of the older 8.5 native API. In 8.5, the report viewer not only showed the number of records read, what percent of completion, number of records qualified for the report, but also had a stop button so that I could stop at the current position and either cancel processing or show the report with wat had been read. How was this a good idea to remove these features? This may be a deal breaker for us.

former_member183750
Active Contributor
0 Kudos

How was this a good idea to remove these features?

Different technologies, different functionality.

Since you'r eusing CR 2008, make sure you are on SP5:

http://scn.sap.com/docs/DOC-27917

- Ludek

Former Member
0 Kudos

We are using SP5.

The problem is that with no progress being shown, you can't tell if the viewer is hung or just taking a long time. The new API is also much slower so I'm left in the dark for hours while the report processes.

former_member183750
Active Contributor
0 Kudos

For web apps you can add a progress dialog - it will not tell you how many records were processed, but it will not just sit there not doing anything. Though, then there are complaints that the progress dialog looks like the report is hung, so users abandon the report there...

See KB - 1323583 - How to create a Progress Dialog with Crystal Reports In Visual Studio .NET


For Win apps, a progress dialog was added to Crystal Reports for Visual Studio 2010:

KB - 1535772 - How to create a Progress Dialog in a Win Form application using Crystal Reports In Visual ...

Re. 'The new API is also much slower so I'm left in the dark for hours while the report processes."

It should not be slower. But we've covered three distinct issues in one post already, so please create a new forum post and we'll see what's up.

- Ludek

Former Member
0 Kudos

The version we are using doesn't have that method. I've read of issues and the last contact I talked to at SAP said that the 2008 version is more stable and the preferred version over the 2010 and 2011 versions. Don't press me for names, I didn't write it down.

As for the speed, I don't see much that can be done about it. On my development machine, it takes 20+ seconds to initialize the .NET framework then about the same or more on the tear down after the report has been completed. The older native API was much faster. This is just a comment on one of the reasons the progress was needed.

former_member183750
Active Contributor
0 Kudos

Re.  If I knew who told you about CR2008 at SAP, I'd meet em in the back alley LOL

The initial load of the CR runtime is not any faster, however subsequent report runs should be comparable to what the RDC used to be able to do (not sure what this means: about the same or more on the tear down after the report has been completed.) And you will get the progress indicator.

CRVS2010, all I can say is, if you have VS2010, give it a try. I do not think it's any worse than CR 2008. AS for record count, I've done a bit of looking around and perhaps this KB will help:

1471477 - Using the RAS SDK for VS .NET, how to determine number of data rows returned to a report?

- Ludek

Former Member
0 Kudos

That document must be referencing a different version. The runtimes I'm linking to doesn't have the same structure.

Again, we are using the 2008 SP5 runtimes.

former_member183750
Active Contributor
0 Kudos

It's using InProc RAS SDK. Not a problem, you just have to add the correct references. See the following for more info:

How to Use The RAS SDK .NET With In-Process RAS Server

and sample apps are here:

http://wiki.sdn.sap.com/wiki/x/IgBmBQ

- Ludek

Former Member
0 Kudos

I've looked at your sample code but the version I'm using doesn't have that structure. This must be a 2010 API because the 2008, that we are using, doesn't have that same structure.

Would you happen to know if we could roll our 2008 license to 2010 without having to pay the full price for the 2010. We'd bought the 2008 version based on recommendations from the sales associate we were in contact with.

former_member183750
Active Contributor
0 Kudos

CR 2008 has it. 100% for sure. CR for Visual Studio 2008 does not have the InProc RAS SDK. E.g.; this is not CR 2008, it's CR 10.5. What is the version of the CR references in your project?

- Ludek

Former Member
0 Kudos

CrystalDecisions::CrystalReports::Engine 12.0.1100.0

CrystalDecisions::Shared 12.0.1100.0

CrystalDecisions::Windows::Forms 12.0.1100.0

DotNetExternalCommandAdapter 1.0.1.0

I'm not using the API that ships with VS. I'm using the runtimes for CR 2008. I am using VS2008 to write the C++ .NET CLI interface with out native C code.

Using the Object Browser, I cannot see the CrystalDecisions::CrystalReports::Engine::Controllers namespace though the ReportClientDocumentWrapper class shows it as a member. Is there a different DLL that supports this namespace?

former_member183750
Active Contributor
0 Kudos

Using VB some of the RAS the imports would be:

Imports CrystalDecisions.ReportAppServer.Controllers

Imports CrystalDecisions.ReportAppServer.ClientDoc

Imports CrystalDecisions.ReportAppServer.ReportDefModel

So, I's assume in your case we'd be looking at:

CrystalDecisions::ReportAppServer::Controllers

???

- Ludek

Former Member
0 Kudos

Since I'm using C++, I use the

using namespace CrystalDecisions::ReportAppServer;

statment. But none of the sub namespaces nor classes exist so I cannot reference the

CyrstalDesisions::ReportAppServer::Controllers namespace. It simply is not there.

former_member183750
Active Contributor
0 Kudos

Note that in the previous post you had:

I cannot see the CrystalDecisions::CrystalReports::Engine::Controllers

Can you check the GAC and see if you have CrystalDecisions.ReportAppServer.Controllers ?

- Ludek

Former Member
0 Kudos

Found it. Thanks I'll give it a go.

Former Member
0 Kudos

OK so I finally found all of the assemblies needed, changed the code, and the cursor showed a row count of 1 when 496 records were renderred on the report.

Now what?

former_member183750
Active Contributor
0 Kudos

Phone case? Works for me. It may be report specific, or?

Phone cases can be created here:

http://store.businessobjects.com/store/bobjamer/en_US/pd/productID.98078100?resid=S6I@hgoHAkEAAGsiyV...

- Ludek