ASPHostCentral.com Crystal Report Hosting BLOG

All about Crystal Report 2010 Hosting and Crystal Report 2008 Hosting articles

How to solve the error message "Failed to create the Crystal Query Engine"

clock April 25, 2011 19:57 by author Administrator
Symptom:
When attempting to run a report, an error message states: 'Failed to Create the Crystal Query Engine'.

Solution 1:
There may be mismatched Crystal report DLLs in the system32 directory.
Rename the CRPE32.DLL file in the C:\Windows\System32 directory to CRPE32.DLL.OLD and reinstall the program.  A new CRPE32.DLL file will be installed that should match all the other dll versions.

Solution 2:

You may have Crystal Reports installed and the dll needs to be re-registered.
1. Quit Crystal Reports.
2. On the Windows taskbar, click the 'Start' button and then click 'Run'.
3. Type: 'regsvr32 "C:\Windows\System32\crqe.dll"'.
4. Click 'OK'.

A message appears indicating the file is successfully registered. If the file does not register correctly, try solutions 2.

Note:
You may need to locate the crqe.dll if it is not in the c:\windows\system32 direcotry. In this case, on the Windows taskbar, click the 'Start' button > Find (or Search) > Files and Folders. Enter crqe.dll and perform search. Note the location and substitue the path to register this file.
 

Currently rated 1.6 by 38 people

  • Currently 1.631579/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


Crystal Report Hosting :: How To Solve the Error Message “Could not load file or assembly CrystalDecisions.Web….”

clock April 17, 2011 17:56 by author Administrator
"Could not load file or assembly 'CrystalDecisions.Web, Version=10.2.3600.0, Culture=neutral, PublicKeyToken=692fbea5521e1304' or one of its dependencies. The system cannot find the file specified."

Error message show when try to deploy web application to 64 bit Windows server 2008 R2 server. 

"Could not load file or assembly 'CrystalDecisions.Web, Version=10.2.3600.0, Culture=neutral, PublicKeyToken=692fbea5521e1304' or one of its dependencies. The system cannot find the file specified."

This is not easy for us to debug because we already install crystal report runtime in the server. But wait ... what is the problem then? version? yes, the version for the runtime installed is 10.5.3700.0 which i get from my machine:

C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Packages\CrystalReports10_5. 

So, how to get crystal report runtime 10.2.3600.0 version? We can download from 
http://resources.businessobjects.com/support/additional_downloads/runtime.asp#07

So, beware of the different version of crystal report runtime. Hope this help 

Currently rated 1.5 by 4 people

  • Currently 1.5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


Crystal Report Hosting :: Solving the Issue with the Maximum report processing jobs limit in Crystal Report

clock April 4, 2011 17:44 by author Administrator

This is a very common error in Crystal Report when its give this following message.

"The maximum report processing jobs limit configured by your system administrator has been reached."

I have been read about its on lot forums and new groups. Its actually means that Crystal Report print job limit has been reached and you should handle this problem by increasing the job limit in the registry. The basic reason of this problem is Garbag Collector (GC) cannot clear the reference of report document in their collection process its only clear report viewer.

HKEY_LOCAL_MACHINE\SOFTWARE\CRYSTAL DECISIONS\10.0\REPORT APPLICATION SERVER\SERVER\PrintJobLimit

Yesterday we also facing this problem in our application and after lot of discussion in the team we find out a good solution of this problem in the form following factory class because we not facing this problem in whole application.

 

You can use this ReportFactory class for creating ReportClass object and don’t need to call explicitly dispose method on the page because ReportFactory class will automatically dispose it when count reach to 75.

Currently rated 5.0 by 1 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


Crystal Report Hosting :: Crystal Reports in ASP.NET Web Applications

clock March 30, 2011 15:34 by author Administrator
Introduction

Crystal Reports is the built-in report designing tool in Visual Studio .NET and it is fully integrated with windows and web applications. It is very easy to use and design the reports with it. To add a report to a visual studio .NET projects (windows or web) you just need to right-click on the project name and add new Items, and add the crystal report from the list. As a result Visual Studio adds a report to the project and opens the report designer to let you design and edit the reports.

 In this article, we are not planning to get into the details of Crystal Reports. Every single kid can open Crystal Report and play with it to design some simple reports (definitely you need to know a lot about crystal to design a professional report but currently that is not our main topic). There are lots of complains about crystal reports from the programmers that this feature is NOT working properly and we see even more complains when developers try it for the web application. We plan to give you and overview and a walkthrough code on how to use crystal reports in the web applications.

Data flow in .NET applications

To understand where the problems come from with this beautiful feature added to Visual Studio .NET we need to understand how the data is transferred from the data provider (SQL Server) to CrystalReportViewer Object. Imagine we are using ADO .NET to get a subset of data from SQL Server and store it in a DataSet. Then we conduct the data from dataset to CrystalReportViewer object to be displayed.

SQL Server -> SQLConnection -> SQLDataAdaptor -> DataSet -> CrystalReportDocument -> CrystalReportViewer -> ASP .NET web page

Hey, what's going on here!? Yes, in .NET application Crystal Report Document reads the data from dataset, NOT directly from data provider and this is the key point to Crystal Report integration with .NET. As a result to open Crystal Reports into a web page we need to follow these steps:

1. Populating DataSet in the same way that we do it in ADO .NET Disconnected scenario.
2. Creating the CrystalReportDocument Object and introducing populated DataSet as it's report source.
3. Redirecting the generated report to CrystalReportViewer web control that is provided by ASP .NET.

Let's do it


Ingredients:

1. Visual Studio .NET or Visual Studio 2003
2. SQL Server 7.0/2000 (If you use MSDE you need to restore Northwind Database, it is not included in MSDE)
3. Microsoft windows XP Professional or 2000 (If you have problems running this code on Windows 2003 server send contact us)

Recipe

1. Preparing SQL Server to run ASP .NET Application
Open the SQL Server Enterprise manager, Expand SQL Server Group -> Computer Name -> Security. Then right-click on logins and New Login... . On General tab click on ellipses in front of the name textbox. Select ASPNET and click on Add, the press OK to add ASPNET account to logins. Then click on Database Access tab and check Northwind in the list. Press OK and make sure if the <ComputerName>\ASPNET account ( add <ComputerName>\IIS_WPG in windows 2003 server instead) is added to logins list. You don't need to give any other permission. Public user has read and write permission to Northwind Database.

2. Creating a New ASP .NET web application
Run the visual Studio .NET and Create a new project. In the project types select Visual Basic Projects, and for the template select ASP .NET Web Application. Change the location to http://localhost/CrystalRepSample and click OK.

3. Connecting the application to Northwind Database in SQL Server and filling the DataSet with Northwind data.
- Open the server explorer (Ctl+Alt+S), right-click on Data Connections, and then Add Connection, for the server name type localhost or (local) or the SQL Server instance name. Select Use windows NT Integrated security and then select Northwind from Select the database on the server.
- In the server explorer expand the newly created connection to Northwind, expand the Tables and the drag the products table and drop it on the form. This creates an SQL ServerConnection object to Northwind as ServerConnection1, and the SQLDataAdaptor1 to pump the data to the DataSet that we are just about to create.
- Right-click on the SQLDataAdaptor1 and click on Generate DataSet... and then in the Generate Dataset dialog box just accept the defaults and click OK. The DataSet11 will be added to your form.
- Double-Click on the Webform1 that will open the webform in code view. In the page load event add the proper code to populate the dataset using SQLDataAdaptor1 as following:
     SqlDataAdapter1.Fill(DataSet11, "Products")
- Now we have a dataset with data that we can provide the data to report designer.

4. Creating the report with Crystal Designer
- In the project menu select Add New Item...
- In the templates box select Crystal Report, change the name to rpProducts.rpt and and click Open.
- To save the time just accept the Report Expert and standard report and press OK.
- In the Standard report expert dialog box in the available data sources expand project data. Expand ADO .NET DataSets and expand CrystalRepSample.DataSet1, you will find Products table in there. Select it and click insert table. Then click Next.
-  In the Fields tab just select some fields and click Add.
- Just click on Finish button and your report is ready.
- At the moment we have a report that reads data from an ADO .NET DataSet

5. Creating the web interface to present report
- Open the Webform1.aspx in design mode.
- Click on a white space on the form and the in the properties window set the pageLayout to FlowLayout. (This step is very important because we are using as Web Custom Control)
- Go to the toolbox and click on Web Forms then select CrystalReportViewer from the list and drag and drop it in the webform1.aspx. CrystalReportViewer1 will be added to the form.

6. Providing the data to report
- Open webform1.aspx in Code View and go to Page_Load sub.
- AFTER the line of code that you have already added, add the following code

Dim cr As New rpProducts() ' Creates the ReportDocument object
cr.SetDataSource(DataSet11) ' Defines the source of data for report which is DataSet11
CrystalReportViewer1.ReportSource = cr ' Makes the ReoprtViewer web control to know it's report source
CrystalReportViewer1.DataBind() ' You need to remind CrystalReportViewer1 that there is some data. Update the interface
 

7. Building and testing the application
Just press Ctl +F5 to build and run the application




Currently rated 1.4 by 7 people

  • Currently 1.428571/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


Crystal Report Hosting :: Solving the Login Failed Error in Crystal Reports

clock March 14, 2011 17:48 by author Administrator

Introduction

In his “Troubleshooting Database Login Errors using Crystal Reports with .NET,” Eric Landes points out that he sees questions regarding the “Exception Details: CrystalDecisions.CrystalReports.Engine.LogOnException: Logon failed” message quite often in the newsgroups.  That's an understatement.  Since I use the “push” method (generating an ADO.NET dataset first, then setting the report's DataSource), I never saw this error, but I decided to try and replicate the problem to see why this was happening--it seems to be a popular error.  I had a suspicion that impersonation and the “double hop“  (where the ASP.NET application cannot pass the user's credentials) may play a role in this problem, since the methods in Eric's article don't solve the problem for every user it should.

To replicate the problem, I used an ASP.NET project connecting to either a remote production SQL Server database or a copy of the same database on my development machine (SQL Server Developer Edition).  I created a stored procedure that was just a simple SELECT statement, and used this stored procedure as my report source (“pull“ method).  I probably created this report 20 different ways, testing various options, and here's what I found.

Lesson 1: Integrated or SQL Server Security

When you begin to design your report, you are prompted to connect to the SQL Server database when you choose an OLEDB connection (CR.NET doesn't use ADO.NET, and ODBC requires a system DSN).  Your choices are to use Integrated Security or to enter a user ID and password.  If you choose Integrated Security, Visual Studio will use your credentials to connect to the SQL Server database via Windows Authentication.

If you choose to enter a user ID and password, VS will connect using SQL Server authentication.  You cannot enter another domain account in the user ID and password boxes and connect using those credentials via Windows Authentication.  This information in these textboxes can only be used for SQL Server authentication.  Even though you must enter a password at this stage, the password information is not stored within the report file for security reasons.  The password is only used to establish the database connection.  This means you must apply logon information to each table at runtime as shown in Eric's article.

The security method you choose at this point is the security method you must use when you generate your report, as we'll see in Lesson 2.

Lesson 2: Only One Security Model Allowed

The Crystal Reports engine cannot switch from Integrated Security to SQL Server security.  This means that if you design your report using Integrated Security, you must supply a domain user's credentials in code to log on to the SQL Server (you can change the user, but it must be a domain account).  If you will be using a SQL Server account in production, it is very important that you use this account's credentials to connect to the database during the design phase.

The CR designer caches database connection information, so I have found it best to completely delete all current connections and then exit and reopen Visual Studio before designing my report.  I could then make a fresh connection to the database using the credentials I wanted.  You can check by right-clicking the connection in Server Explorer and choosing “properties.”  If you're using a SQL Server account, you'll see a user name; if using Integrated Security, the user name will not appear.

When using SQL Server authentication, I found it was also best if there was a SQL Server login account with the same user name on my dev database as well as the production database.  You should be able to use a different SQL Server account in production than in development, but I had occasional problems I couldn't explain when I tried to do so.

Lesson 3: Credential Delegation/Impersonation ("Double Hop")

Integrated Security can only be used in two contexts: when inside Visual Studio (which, since it is a Windows Application, can directly use your network token to connect to the remote database), or when IIS and SQL Server are on the same production machine.  If you try to use Integrated Security on a production IIS Server with a remote SQL Server, you will get the “Logon Failed” error.  This is because the application cannot impersonate your credentials from the IIS Server to the SQL Server (the “double hop”) without Kerberos or some sort of delegation set up.

Kerberos is running on the network I tested, and normal ASP.NET apps impersonate my credentials to the SQL Server, so it appears that the Crystal Reports engine cannot take advantage of Kerberos.  Not every network has Kerberos running, so if in doubt, ask the network admins.

When testing whether or not the Crystal engine could use impersonation, I tried both specifying my user name and password in the web.config file as well as leaving the information blank (and the ASP.NET worker process would use the current login credentials).  In both cases, the report was unable to connect to a remote SQL Server database.  The CR engine could connect to a database hosted on the same machine.

If you are using the pull method, this means your only option to connect to a remote SQL Server is to create a new SQL Server login with minimum permissions (note: do not use 'sa' or some other administrative login--this is a bad security practice), and use that login's credentials in your code.  This is actually not a bad thing at all, but I could not find mention of this in any Crystal documentation.

Lesson 4: Design Changes Sometime Cause Login Failure

Sometimes, after making small changes (such as removing a field from the report), I would get the “logon failed” error.  I found that after verifying the database (right-click on report, choose Database >> Verify Database) and recompiling the project, the problem went away.

Conclusion

This article is not an all-encompassing list of causes for the "login failed" error.  This error is pretty general and may be thrown for reasons other than login credentials.  In these cases, knowing some of the causes for this error may save you some debugging time.

Before starting a Crystal Reports application in ASP.NET, you need to give some thought as to the security context your application will be running under.  In addition to data security and application security, you must also consider how the report will connect to the database.

Personally, I still prefer the push method.  Since this method uses ADO.NET datasets, it can take advantage of the optimzed System.Data.SqlServer class for better performance, and security is handled in the connection string or by application impersonation as specified in the web.config file.

Currently rated 3.0 by 22 people

  • Currently 3/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


Crystal Report Hosting :: Working with Crystal Report Viewers

clock June 3, 2010 17:42 by author Administrator
Crystal Report Viewers work as a container of a report and allow us to view a crystal report in Windows and Web applications. Crystal Reports for Visual Studio .NET provides two report viewers – Windows Forms Viewer and Web Forms Viewer. As you can guess from these names, Windows Forms Viewer control is used to view reports in Windows Forms applications and Web Forms Viewer is used to display reports in Web Forms applications.

ASPHostCentral.com, as a leading Crystal Report provider, proudly presents this article to anyone and we believe it may benefit ASP.NET community or anyone who are using Crystal Report. We have a demo of our own Crystal Report project and you can preview it at http://crystalreportdemo.asphostcentral.com. If you are looking to host your Crystal Report project, look no further as with ASPHostCentral.com, you can start from as low as $4.99/month only!

The integration of Crystal Reports in Visual Studio.NET and the availability of wizards and tools have made writing reports a piece of cake for developers. Visual Studio .NET hides all the details from developers and provides them easy to use user interface so they can concentrate on designing the layouts of the reports. But it's always a good idea to understand what goes under the hood. In this article, we will explore the Crystal Report Viewers and their functionality.Crystal Report Viewers work as a container of a report and allow us to view a crystal report in Windows and Web applications. Crystal Reports for Visual Studio .NET provides two report viewers - Windows Forms Viewer and Web Forms Viewer.

As you can guess from these names, Windows Forms Viewer control is used to view reports in Windows Forms applications and Web Forms Viewer is used to display reports in Web Forms applications.


Crystal Reports Viewer for Windows Forms

The CrystalReportViewer class defined in the CrystalDecisions.Windows.Forms namespace represents a Crystal Report Viewer for Windows Forms (viewer afterwards). This class is a user control and can be used as any other user controls. This control is available in the Toolbox and you can simply drag it to a Form to add the control to the form.To view a report in the viewer, you simply need to set the ReportSource property of the control. The ReportSource property can be either a full name of the report file, a strongly typed report, or a ReportDocument object.

The following code snippet binds a report with hard coded full path of the report to the viewer:

crystalReportViewer1.ReportSource = @"C:\temp\Customers.rpt";The following code snippet binds a strongly typed report to the viewer:Customers custReport = new Customers();
crystalReportViewer1.ReportSource = custReport;

The following code snippet creates a ReportDocument object, loads a report using the Load method and binds the ReportDocument object to the viewer:

CrystalDecisions.CrystalReports.Engine.ReportDocument doc =new CrystalDecisions.CrystalReports.Engine.ReportDocument();
doc.Load(@"C:\temp\Customers.rpt");
crystalReportViewer1.ReportSource = doc;



Customizing the Behavior of Crystal Report Viewer

Using the CrystalReportViewer class members, we can customize the behavior of the viewer such as disabling or enabling viewer toolbar buttons, adding custom zoom factor, or moving to different views of the report programmatically. The default Crystal Report Viewer looks like the following:



The first four buttons on the viewer allow us to move first, previous, next, and last page of the report. The next button can be used to jump to a particular page. Next three buttons are used to close the view, print the report, and refresh the report respectively.

Next button allows you to export reports as to various files such as a pdf, tif, doc, or rtf. The next button is a toggle for grouping if a report has groups. Next two buttons are for zooming and search.By using the properties and methods of CrystalReportViewer , we can customize the default settings of the viewer.

Some of the common properties of CrystalReportViewer are following:
ActiveViewIndex and ViewCount

A page in the report is called a view. The active page is called active view. The ActiveViewIndex property gets or sets the active view in the viewer and ViewCount returns total number of views in a report.

DisplayToolbar

You can display or hide the toolbar using this property. The following code snippet hides the toolbar.

crystalReportViewer1.DisplayToolBar = false;ShowCloseButton, ShowExportButton, ShowGotoPageButton, ShowGroupTreeButton, ShowPrintButton, ShowRefreshButton, ShowTextSearchButton, and ShowZoomButton properties can be used to show or hide the respective buttons.


CrystalReportViewer Methods

We can manage the functionality of the viewer buttons programmatically using its members. The CrystalReportViewer class provides methods to export, print, refresh, close, search, zoom, and navigation functionality. The following table lists the CrystalReportViewer class methods:
CloseView Closes a view tab in the viewer.
DrillDownOnGroup Drills down on a group.
ExportReport Exports the report displayed in the viewer.
GetCurrentPageNumber Gets the current page number of the report.
PrintReport Prints the report displayed in the viewer.
RefreshReport Refreshes the report displayed in the viewer.
SearchForText Searches the report for the given text.
ShowFirstPage Shows the first page of the report.
ShowGroupTree Shows the group tree in the viewer.
ShowLastPage Shows the last page of the report.
ShowNextPage Shows the next page of the report.
ShowNthPage Shows the specified page of the report.
ShowPreviousPage Shows the previous page of the report.
Zoom Changes the magnification level of the viewer



Where do you go for Crystal Report Service Hosting?

What we think makes ASPHostCentral.com so compelling is how deeply integrated all the pieces are. We integrate and centralize everything--from the systems to the control panel software to the process of buying a domain name. For us, that means we can innovate literally everywhere. We've put the guys who develop the software and the administrators who watch over the server right next to the 24-hour Fanatical Support team, so we all learn from each other:

- 24/7-based Support - We never fall asleep and we run a service that is operating 24/7 a year. Even everyone is on holiday during Easter or Christmas/New Year, we are always behind our desk serving our customers
- Excellent Uptime Rate - Our key strength in delivering the service to you is to maintain our server uptime rate. We never ever happy to see your site goes down and we truly understand that it will hurt your online business. If your service is down, it will certainly become our pain and we will certainly look for the right pill to kill the pain ASAP
- High Performance and Reliable Server - We never ever overload our server with tons of clients. We always load balance our server to make sure we can deliver an excellent service, coupling with the high performance and reliable server
- Experts in Crystal Report Hosting - Given the scale of our environment, we have recruited and developed some of the best talent in the hosting technology that you are using. Our team is strong because of the experience and talents of the individuals who make up ASPHostCentral
- Daily Backup Service - We realize that your website is very important to your business and hence, we never ever forget to create a daily backup. Your database and website are backup every night into a permanent remote tape drive to ensure that they are always safe and secure. The backup is always ready and available anytime you need it
- Easy Site Administration - With our powerful control panel, you can always administer most of your site features easily without even needing to contact for our Support Team. Additionally, you can also install
more than 100 FREE applications
directly via our Control Panel in 1 minute!

Happy hosting!

Currently rated 1.5 by 8 people

  • Currently 1.5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


Crystal Report Hosting

ASPHostCentral is a premier web hosting company where you will find low cost and reliable web hosting. We have supported the latest Crystal Report 2010 (v13 and v14) hosting. We have also supported the latest ASP.NET 4.5 hosting and ASP.NET MVC 4 hosting. We have supported the latest SQL Server 2012 Hosting and Windows Server 2012 Hosting too!

 

Sign in