Crystal Reports
Crystal Reports is a business intelligence application used to design and generate reports from a wide range of data sources. Several other applications, such as Microsoft Visual Studio, bundle an OEM version of Crystal Reports as a general purpose reporting tool. Crystal Reports became the defacto report writer when Microsoft released it with Visual Basic.
Creating reports
Users install Crystal Reports on a computer and use it to select specific rows and columns from a table of compatible data (see "Supported data sources" below). Users can then arrange the data on the report in the format needed. Once the report layout is complete it is saved as a file with the extension RPT. A report can be rerun anytime by reopening the RPT file and 'refreshing' the data. If the source data has been updated then the refreshed report will reflect those updates. The report can then be previewed on the screen, printed onto paper or exported to one of several different file formats such as PDF, Excel, text or CSV.
Report formats can vary from a simple column of values to layouts featuring pie charts, bar charts, cross-tab summary tables and nested subreports. Crystal Reports is designed for "presentation quality" reports so there are many options for enhanced formatting.
Running reports locally
The users who design the reports can run them as needed from within the report designer. When running reports directly within the report designer the user has the ability to change any feature of the report. The user can also create variations of the report by saving the modified RPT file under another name.
It is also possible to run a Crystal Report without using the full Crystal Reports designer software. These alternate methods for running reports include locally installed viewers, schedulers, and report distribution tools. These are typically third-party software programs (independent of Business Objects) that allow you to open, refresh, preview, print and export an RPT file. In 2007 Business Objects released their own viewer, Crystal Reports Viewer XI, but unlike the independent viewers it does not allow the user to refresh the report, but only to view static data saved in the RPT file.
Some of the independent viewers add other capabilities such as allowing the user to schedule a report to run automatically at certain times. Still others allow reports to be burst and/or distributed via Email.
Crystal reports is bundled with a set of ActiveX controls that, when embedded in a simple GUI, can provide an alternative user interface. These same controls allow reports to be deconstructed into their base objects. This, in turn, allows the same reports to be generated at run time, customising them as necessary.
Running reports on the Web
Crystal Reports can also be run and managed from a web portal. Business Objects has 4 web portal products:
- Business Objects Enterprise (Enterprise)
- Business Objects Crystal Decisions (Mid Market)
- Crystal Reports Server (Small-Medium)
- crystalreports.com (Hosted Report-Sharing Service)
Independent providers have also created web portal products for Crystal reports, including:
Origins
The product was originally created by Crystal Services Inc., which produced versions 1.0 through 3.0. The company was subsequently acquired by Seagate Software, which later renamed itself to Crystal Decisions, and produced versions 4.0 through 9.0. Crystal Decisions was acquired in December 2003 by Business Objects, which has so far produced versions 10, 11 (XI) and the current version 12 (2008). Business Objects is currently in the process of being acquired by SAP.
Supported data sources
Accessible data sources include:
- Databases such as Sybase, IBM DB2, Ingres, Microsoft Access, Microsoft SQL Server, MySQL, Interbase and Oracle
- Btrieve
- Spreadsheets such as Microsoft Excel
- Text files
- XML files
- Groupware applications such as Lotus Notes, Microsoft Exchange and Novell GroupWise
- Any other data source accessible through a web service, ODBC, JDBC or OLAP.
Criticisms
Reports generated in HTML include many long unique identifiers, increasing download time.
The reporting engine uses significant amounts of memory, sometimes reaching the maximum allowed by ASP.NET, forcing process recycling.
There are several Service Packs, but the software still contains limitations, i.e. you cannot build an array of over 1000 elements. The process by which the Crystal Engine generates its data may return the same result set many times, which can severely slow down report generation.