cancel
Showing results for 
Search instead for 
Did you mean: 

Changes required for Migration from CR 8.5 to CR 11

Former Member
0 Kudos

Dear All,

We have successfully migrated all the reports which were created in CR 8.5 to CR 11. But those same reports developed in CR 8.5 are called through .exe which has been built with Microsoft Visual Studio .NET 2003. The old reports of CR 8.5 is working fine. while we are unable to open CR 11 reports through .exe. It says DLL missing. I guess some higher version of p2sodbc.dll and some more required.

Can you please help me out.

Warm regards,

Santosh Kumar Prashant

Accepted Solutions (1)

Accepted Solutions (1)

former_member183750
Active Contributor
0 Kudos

Please provide exact error message and exact version of Crystal reports used. Also, have you applied any CR Service packs?

Ludek

Former Member
0 Kudos

Dear All,

Crystal Reports product version what we are using is 11.0.0.1282.

Error is "unable to load report".

We have two versions of crystal reports to be called through the exe built in Microsoft Visual Studio 2003.

Case 1--->When we open reports of Crystal Report version 8.5 through the exe built in Microsoft Visual Studio 2003, it's working fine through exe .

Case 2--->When we try to open reports of Crysatl report version 11.0.0.1282 with the same exe then it throws error "Unable to Load reports".

Our project is to migrate all reports saved in Crystal Reports 8.5 to Crystal reports 11.

We need to have some DLL in order to open CR 11 reports through exe. I don't know the exact name and version of DLLs.

Kindly assist.

Regards,

Santosh Kumar Prashant

Former Member
0 Kudos

Dear All,

Adding some more info to my query. Please assist.

List of Dlls and their version which works fine in opening the reports

CR 8.5 through EXE built in Microsft Visual Studio.NET 2003

DLL Name Version

-


-


craxdrt.dll 8.5.0.217

crpe32.dll 8.0.0.371

MFCANS32.dll 3.2.1.0

p2sodbc.dll 8.0.0.84

ActiveX control file

ss32x25.ocx 2.5.0.25

In Order to open the reports of CR 11 what upgrades/version we need to do for the

above mentioned DLLs through EXE.

former_member183750
Active Contributor
0 Kudos

Craxdrt.dll (Report Designer Component) is not supported in .NET. For more information on support and on how to work with the RDC in .NET, see [this|https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/f0751a7f-a81d-2b10-55a0-e6df0e1bab6d] article.

Re. the error. Make sure that you are indeed loading craxdrt.dll of version 11. Version 8.5 craxdrt.dll will not load version 11 reports. To check dlls loading, I recommend using the Modules utility:

https://smpdl.sap-ag.de/~sapidp/012002523100006252802008E/modules.zip

Ludek

Answers (1)

Answers (1)

Former Member
0 Kudos

Dear All,

We have some reports designed in Crystal reports 8.5. We want to migrate those to Crystal reports 11.

For existing Crystal reports of 8.5, we have the set up as below:

1) Crystal reports 8.5 client installed in one machine and reports created.

2) Those reports placed to other computer where application front end .exe built in Microsoft.NET framework 1.1 is available. there is no any Crystal reports installed in that machine

It uses dlls

1)crpe32.dll ver-8.5

2)p2sodbc.dll ver-8.5

Connects to database and print the report of 8.5 successfully.

Now we have client of Crystal report 11 installed in one machine. Crystal 8.5 reports taken and modified to Crystal reports 11.

When we placed to other machine these reports of 11 version with dlls

1)crpe32.dll ver-11

2)p2sodbc.dll ver-Not available so crdb_odbc.dll ver-11 it's not opening and throws error "Report Engine not opened".

So, is this mandatory to have crystal reports 11 installed in that machine ? Only dlls are not enough ?

If yes then what kind of registry required ?

Please help to know.

Regards,

Santosh

former_member183750
Active Contributor
0 Kudos

So, how did we get from the error; "unable to load report" (Posted: Jun 10) to "Report Engine not opened"?

BTW., "Report Engine not opened" sounds like you are using the win Print Engine APIs... Can you post the code you are using?

Ludek

Former Member
0 Kudos

1) "Unable to Load Report" Error comes when

--> crpe32.dll ver 8.5 placed at the path of Application .exe path

and when I try to open CR 11 reports.

This error not comes when we open CR 8.5 reports from Application .exe.

So, to open CR 11 reports, I placed crpe32.dll ver 11

It opens the CR 11 reports from .exe without error. My machine has got CR 11 installed.

Now I want to have the same set up in another machine where CR 11 is not installed.

I want to open CR 11 reports from .exe.

It throws error 2) "Engine can not opened"

Same exe and code/dlls which works in the machine where CR 11 is installed.

So, to run reports from front is this mandatory to install CR 11 run time package ?

Also, I downloaded the .msi file (CrystalReports11_NET_EmbeddedInstall.msi) from site

https://wiki.sdn.sap.com/wiki/display/BOBJ/CrystalReportsforVisualStudio.NETRuntimeDistribution-Versions9.1to12.0

It is asking for Product ID at the time of installation.

Please help.

former_member183750
Active Contributor
0 Kudos

+1) "Unable to Load Report" Error comes when

--> crpe32.dll ver 8.5 placed at the path of Application .exe path

and when I try to open CR 11 reports.+

Makes sense as you are trying to open version 11 reports with version 8.5 crpe32.dll. This will not work as the version 8.5 crpe does not understand the new cr 11 format.

Re. "So, to open CR 11 reports, I placed crpe32.dll ver 11"

As mentioned before, I need to see your code...

Ludek

Former Member
0 Kudos

Here is the code snippets:

BOOL CReportDialog::Initialize() {

char cMsg[500];

if( pEngine.Open() == FALSE)

{

AfxMessageBox("here");// for test purpose

AfxMessageBox(pEngine.GetErrorText());

return pEngine.GetErrorCode();

}

Inside this method it calls pEngine.open and reaches to else part of Open() and returns "FALSE" as below.

While in my machine where CR 11 is installed it's TRUE

BOOL CRPEngine::Open(void)

{

m_engineError = 0;

if (m_engineStatus == engineOpen)

return TRUE;

if (PEOpenEngine()) {

m_engineStatus = engineOpen;

return TRUE;

}

else {

m_engineStatus = engineClosed;

return FALSE;

}

}

Then throws error "Report Engine not opened"

On click OK it goes to this method and throws "CMS Reports INI file incorrectly configured"

BOOL CReportDialog::OnInitDialog()

{

if( cReturnedString[0] == '0' || ! nReturnCode )

{

AfxMessageBox(" CMS Reports INI file incorrectly configured");

DestroyWindow();

return FALSE;

}

former_member183750
Active Contributor
0 Kudos

Yup. Print Engine APIs. These were retired in version 9 of Crystal reports. Thus you will not be able to make this app run with CR XI as you do not have the necessary header files. From here, your only option is to port the app to use the RDC, or the CR SDK for .NET.

Please be aware that the RDC was retired in version 12 of Crystal Reports.

Ludek

Former Member
0 Kudos

Hi,

Thanks for the reply.

I'm looking for option 2 "the CR SDK for .NET"

I've SDK 1.1 and want to use CR 11 reports. Please let us know what product I need to install in order to run CR11 reports from .exe file built with Microsoft .NET 2003.

Former Member
0 Kudos

Hi,

Also, please let us know the name of RDC that we need to install in order to run CR 11 reports from .exe built in VS 2003.

former_member183750
Active Contributor
0 Kudos

If you have VS .NET 2003, then all you need to do is install CR XI Developer. I would not recommend using the RDC in.NET for two basic reasons:

1) The RDC has not been tested in .NET (thus no escalation is available for any fix issues)

2) The RDC has been retired in CR 12. This may have implications for the lifecycle of your project...

To see how to use the RDC in .NET, check out the article [Using the Report Designer Component in Microsoft Visual Studio .NET|https://www.sdn.sap.com/irj/boc/index?rid=/library/uuid/f0751a7f-a81d-2b10-55a0-e6df0e1bab6d&overridelayout=true]

My recommendation would be to use the CR assemblies for .NET. The following resources should get you going:

[Sample applications|https://wiki.sdn.sap.com/wiki/display/BOBJ/CrystalReportsfor.NETSDK+Samples]

[Crystal Reports For Visual Studio 2005 Walkthroughs|https://www.sdn.sap.com/irj/boc/index?rid=/library/uuid/2081b4d9-6864-2b10-f49d-918baefc7a23&overridelayout=true] (most of the concepts will apply to .NET 2003)

[Advanced use of Crystal Reports for Visual Studio .NETu2019s feature set and object model|https://www.sdn.sap.com/irj/boc/index?rid=/library/uuid/702ab443-6a64-2b10-3683-88eb1c3744bc&overridelayout=true]

Developer libraries:

https://boc.sdn.sap.com/developer/library

http://devlibrary.businessobjects.com

Also, ensure you apply the latest CR XI r1 [Service Pack|https://smpdl.sap-ag.de/~sapidp/012002523100006008952008E/crXIwin_sp4.zip]

Ludek

Former Member
0 Kudos

CR 8.5 has got routine like PESetNthTableLocation() and PEGetNthTableLocation()

while this is failing in CR11

What will be the equivalent in CR 11?

Suppose dbnane is app95

owner is dbo

report calls stored procedure as mysp

This PESetNthTableLocation() sets values as app95.dbo(mysp) in CR8.5

while in CR11

value is app95.mysp

Please help.

former_member183750
Active Contributor
0 Kudos

Are you still trying to use print engine APIs? There is no equivalent print engine API for CR XI. There are equivalent RDC and .NET APIs, but not print engine APIs. Please, please, please read my posts. You are using the win print engine APIs which were retired in version 10 of Crystal Reports. I suggested options for you in my previous posts and I explained why the print engine APIs will not work for you.

If you do not believe me, please do create a support phone case and speak to a support technician. Phone support can be obtained here:

http://store.businessobjects.com/store/bobjamer/DisplayProductByTypePage&parentCategoryID=&categoryI...

Ludek