cancel
Showing results for 
Search instead for 
Did you mean: 

Redistributable components of crystal report 11 and Crystal Report 2013

Former Member
0 Kudos

Currently we are facing a peculiar problem where we are having a report with 5 tables and connected using the default crystal report db connectivity.

The report was created in a very old version of crystal report 8.5 and we have been migrating the same to latest versions.

When i execute the report from my Application using crystal report 11 run-time components installed it works perfectly (5 Secs). In this we were using the viewer ole control embedded in our application.

But when the same report is opened up from the application using the crystal report 2013 run-time components there is performance lag of 15 Secs every time using the viewer as separate control using C# .net framework 4.0. 

Also Installing crystal report 11 run-time and then installing crystal report 2013 run-time resolves the issue.

Can someone let me know if we are missing something.

Thanks & Regards,

Satish VS

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi ,

Any suggestions or things to be tried would be highly appreciated.

Thanks in advance.

Regards,

Satish V S

0 Kudos

Have you enabled Profiler to see what SQL requests CR is sending and compare those to the SDK?

Crlogger may help also, search for it on how to enable. Works in both CR Designer and CR for VS.

Don

former_member188030
Active Contributor
0 Kudos

Hi Satish,

I am not sure if I understood the issue clearly. Need more info and clarity.

- The old application was it a .NET or COM SDK app?

- What version of VS are you using? (Earlier and now).

- Is this a windows or a web application?

- Provide the version no of CR 11 you used earlier?

- There are no runtimes for crystal report 2013, so could you please provide the version no for the crystal report 2013 runtimes you are using? You could check the file version of crystaldesicions.crystalreport.engine assembly.

- As runtimes, did you use MSM, MSi or ClickOnce CR runtimes do deploy your application?

Also, if you could elaborate on how did you upgrade / migrate the application and deployed it, would be helpful.

- Bhushan

Senior Engineer

SAP Active Global Support

Follow us on Twitter

Got Enhancement ideas? Try the SAP Idea Place

Getting started and moving ahead with Crystal Reports .NET applications.

Former Member
0 Kudos

Hi Bhushan

Thanks for your prompt reply

- The old application was it a .NET or COM SDK app?

Old application uses the COM SDK App ( CrystalRuntime.Application) developed in VB & consumed the same as an Ole object in Power builder.

- What version of VS are you using? (Earlier and now).

Earlier With Crystal report 11 we were directly deploying the viewer as ole control in our Powerbuilder application

Now we are using VS2010 with .net framework 4.0 as separate viewer control

- Is this a windows or a web application?

Its an windows application

- Provide the version no of CR 11 you used earlier?

Old Application uses crystal report 11.0.0.1282

- There are no runtimes for crystal report 2013, so could you please provide the version no for the crystal report 2013 runtimes you are using? You could check the file version of crystaldesicions.crystalreport.engine assembly.

Yes we are using crystaldecision run-time  and the version is 13.0.2000.0 & Runtime version - v2.0.50727

- As runtimes, did you use MSM, MSi or ClickOnce CR runtimes do deploy your application?

We were using this CRRuntime_32bit_13_0.msi as a pre-requisite before deploying our application.

-Also, if you could elaborate on how did you upgrade / migrate the application and deployed it, would be helpful.

In my old application we would be using the default crystal report 11 merge module to be deployed alongwith our application msi.

To upgrade they would install the CRRuntime_32bit_13_0.msi  and then deploy our application msi.

Please let me know if you need any further information.

Thanks in advance.

Regards,

Satish VS

former_member188030
Active Contributor
0 Kudos

Hi Satish,

Thanks for the info.

COM SDK is completely deprecated from CR after CR 11.0.

We cannot simply upgrade the COM application with just replacing the new runtimes.

You would need to reqrite the application using the .NET SDK.

With CR 13.0 you could either use VS 2010 / VS 2012 / VS2013.

See the downloads and the developer resources for CR for VS .NET SDK here.

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

Sample applications are here.

http://wiki.scn.sap.com/wiki/display/BOBJ/Crystal+Reports+for+.NET+SDK+Samples

- Bhushan

Senior Engineer

SAP Active Global Support

Follow us on Twitter

Got Enhancement ideas? Try the SAP Idea Place

Getting started and moving ahead with Crystal Reports .NET applications.

Former Member
0 Kudos

Thanks Bhushan for the prompt response.

Sorry for incorrect details we have re-written for crystal report 2013 using Vs 2010 and .net SDK only.

With the re-written code only, when trying to open up the report causes a time delay.

First time takes around 30 secs but from the second time it takes around 20 seconds whereas

using the crystal report 11 took us only 5 seconds.

Hope this helps.

Thanks & Regards,

Satish V S

former_member188030
Active Contributor
0 Kudos

Ahh.. ok.

RDC COM and .NET SDK are two different SDKs having different object model models and should not be compared.

While working with .NETSDk the report takes more time to load at the first time cause of many things going on in background.

it loads all the required assemblies, drivers etc. The subsequent loads should be faster.

See below articles would help.

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

http://search.sap.com/notes?id=0001439745&boj=/sap/bc/bsp/spn/scn_bosap/notes.do?access=69765F6D6F64...

Also, search the forum for performance issues, you would find a lot many discussions, KBAs and blogs.

- Bhushan


Former Member
0 Kudos

Thanks Bhushan for the details.

All the details in the forums pertain to the first time being slow and the rest of the times it shows good performance improvement. But for us the performance has been the slow irrespective of the number of times we open.

Also the peculiar thing is that when we install Crystal report 11 merge modules alongwith our application msi and then execute the crystal report 2013 run-time msi (CRRuntime_32bit_13_0.msi) then execute the reports it works faster.

Also any suggestions if any of the registry keys are being referenced or cached for the db connection.

Our delays mostly occurs in the connectioninfo happening to the tables which takes 5 to 6 secs but with the crystal 11 and crystal 2013 installed it takes only 1 sec. So not able to infer anything.


Any advice on that area would be helpful.


Thanks in advance.


Regards,

Satish V S







former_member183750
Active Contributor
0 Kudos

Hi Satish

This:


Also the peculiar thing is that when we install Crystal report 11 merge modules alongwith our application msi and then execute the crystal report 2013 run-time msi (CRRuntime_32bit_13_0.msi) then execute the reports it works faster.


is a rather bizarre behavior. But it does lead to a question that I have not seen posed yet; what database are you using? And how are you connecting to it? If it is MS SQL, what is the version of the client you are using? And finally, I'd like you to tell us the version of the crpe32.dll in this directory;


C:\Program Files (x86)\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\SAP BusinessObjects Enterprise XI 4.0\win32_x86


Oh, one more thing; Check the report options and make sure that "Verify on 1st refresh" and "Verify stored procedures on 1st refresh" are not enabled.



- Ludek

Senior Support Engineer AGS Product Support, Global Support Center Canada

Follow us on Twitter

Message was edited by: Ludek Uher

Former Member
0 Kudos

Thanks Ludek for your response.

Sorry for the delayed response from our end.

Your right,we are using SQL server and the client version is SQL server 2008 R2.

Crpe32.dll version is 13.0.0.99

Also verified report options for "Verify on 1st refresh" and "Verify stored procedures on 1st refresh" are not enabled.

Db connection has been done using the connection string "DRIVER=SQL Server" using the ODBC (RDO) referring the crdb_odbc.dll

Would this be a problem when connecting to the database.

Please advice.

Thanks in advance.

Regards,

Satish V S

former_member183750
Active Contributor
0 Kudos

Hi Satish

Couple of things to look at:

1) You are using the very first release of CRVS. We are now on Service Pack 11(!). So the 1st thisng to do is to update your dev computer. See the download links here:

Make sure to download the install exe (SPs are cumulative, so go directly for SP 11). You will be required to uninstall the current CRVS install before installing SP 11.

Then redeploy the SP 11 runtime to the user's computer. You will also be required to uninstall what ever runtime is here before SP 11 runtime will install.

2) As you are using MS SQL server 2008, ensure that the SQL Native 10 or SQL Native 11 client is installed. CR will not work correctly with anything earlier than that.

3) Keep your fingers crossed

- Ludek

Former Member
0 Kudos

Thanks Ludek for your suggestions.

Installing the CR 13 SP11 run-time has improved the performance by 4 secs from 12 secs to 8 secs now.

However on further analysis for for crystal 13 SP11 we identified that the SetDBLogonForReport function takes 5 secs for the report which has 8 tables associated . However on crystal 11 & Crsytal 13 SP11 installation it takes 1 sec for the same function.

Also as i said earlier these reports have been existing for years and created by clients so cannot be changed to a single table.

We have modified the report driver to SQL native client as well which didn't show any improvement.

Can you help me if there are any connectioninfo changes implemented between crystal 11 and 13 to further investigate or change code from our end.

Any valuable suggestions on that would be helpful.

Thanks in advance.

Regards,

Satish V S

former_member183750
Active Contributor
0 Kudos

I can ask around, but I need a clarification. You say the following:


Installing the CR 13 SP11 run-time has improved the performance by 4 secs from 12 secs to 8 secs now.

However on further analysis for for crystal 13 SP11 we identified that the SetDBLogonForReport function takes 5 secs for the report which has 8 tables associated . However on crystal 11 & Crsytal 13 SP11 installation it takes 1 sec for the same function.


How do I reconcile the two statements I bolded? One says CR 13 SP 11 takes 8 secs. The ohter says Crystal 13 SP 11 takes 1 sec.

??

- Ludek

Former Member
0 Kudos


Sorry ludek for not explaining clearly.

When we installed CR 13 SP 11 on a clean machine and opened the report from application then it takes 8 secs.

However when we installed CR 11 on a clean machine and opened a report from application then removed CR 11 and installed CR 13 SP 11 and opening the report took only a  sec.

For CR 11 we were using VB but for CR13 we are C# SDK.

So need to know whether we are missing any references.

Hope i have explained clearly.Please let me know if you need any further information.

-Satish V S

former_member183750
Active Contributor
0 Kudos

I don't see CR 11 adding any references to "CR 13" to make any difference. I'd use the Modules utility and compare the runtime on the two computers. Look at the CR runtime to make sure it is the same on both computers. Compare the DB client runtime. Compare the VC ++ runtime

- Ludek

Former Member
0 Kudos

Ludek,

When we utilized the IP address of the SQL server instance instead of the Server Name

in the connectioninfo there was a substantial improvement on the performance.

We suspect that the crystal runtime is trying to resolve the SQL Server instance name and takes time. Hence for multiple tables trying to connect each time could potentially contribute to delay.

Can you please advice us whether this would be the right approach to utilize the IP address instead of the server name

Regards,

Satish V S

former_member183750
Active Contributor
0 Kudos

Sorry Satish. I am not aware of any issues like this. I'll ask Don to have a look, but well,... if it works...(?).

Let's see what Don says.

- Ludek

0 Kudos

Hi Satish,

It's possibly missing registry key that Cr 11 installs but CR for VS runtime does not.

Use Process Monitor and filter on the registry keys. likely something under these keys is missing:

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\SAP BusinessObjects\Suite XI 4.0\Crystal Reports

And the Database subtrees.

It could be you may have one of the Verify Database options enabled in the Report as well, make sure they are unchecked.

Also, Enable Database Server Tracing and see if it captures what it is doing when your app as compared to CR Designer. It could be some new query newer versions of CR is querying the DB for and it's takes time for the DB server to return the results.

It may not even be DB related, could be some other delay

What database are you using and which Client and how are you connecting?

Don

Former Member
0 Kudos

Hi Satish,

Were you able to get your PB application to run a Crystal Report?  We are still using the ole components in PB.

Thanks,

Sharon

Former Member
0 Kudos

Hi Sharon,

We are not using ole components with crystal 2013, we are using the C# SDK to invoke the viewer control. This would be separate screen from your PB application screen and would not have any control from the application.

Hope this helps.

Regards,

Satish V S

Former Member
0 Kudos

Don,

Thanks for your response.

We are using SQL server 2008 and use the SNC connectivity to connect the report to the DB.

When we try to connect from the crystal 11 the registry key -

Computer\HKLM\Software\Microsoft\Mssqlserver\Client\SupersocketNetlib\LastCOnnect\

But this does not create or update when connecting from crystal 13 under the registry key -

Computer\HKLM\Software\Microsoft\Mssqlserver\Client\SNI10.0\LastConnect\

When opening the report from the crystal designer takes only a sec. so the report does not seem to be an issue. but only when connecting from the application it takes time. We had a log on the C# and identified the connectioninfo on the tables takes nearly 4 secs to connect to the db. In that

the first connection takes 3.5 secs of the time and the rest few milliseconds.(irrespective of no. of tables). Also the printing function takes 4 secs and this was resolved by migrating to Crystal 2013 SP 11.However the connectioninfo on tables was not resolved even after migration.

Hope this information helps.

Regards,

Satish V S