
|
Database reporting has long been considered a key technology for a small group of users. Mainframe reporting products were complex as they were targeted at analysts and application programmers. Report writers got easier to use when Windows-based products began to focus on average business users. But like all evolutionary processes, even the PC products got more sophisticated with every new release. Seagateıs Crystal Reports has been a leader in PC-based reporting for many years. It has constantly needed to provide innovative new features to keep developers happy and stay ahead of the competition. The phenomenal growth of the Web has forced many companies to re-architect their client/server products to support new Web architectures. Seagate has responded with Crystal Reports 6.0, which delivers impressive Web reporting functionality for both developers and end users. Crystal Reports 6.0 delivers the ease of development and rapid deployment capabilities that corporate developers have been waiting for since the emergence of intranets. Users will find the new Web reporting and navigation features so easy to use that we may see a new age of growth in the reporting market. If you havenıt integrated your database with your intranet yet, Crystal Reports 6.0 is a good starting point.
I tested Crystal Reports 6.0 on a 90 MHz Pentium laptop with 48MB RAM and on 133MHz Pentium desktop PC with 32MB RAM running Windows 95. Using the Crystal runtime viewer, I viewed runtime reports on a minimal 486 25MHz Windows 3.1 system with 2MB RAM. I donıt recommend designing reports in this environment, but many corporate users are still using Windows 3.1 PCs, and theyıll be pleased to know that reports created in Crystal Reports 6.0 do run in Windows 3.1 environments.
Installing Crystal Reports is straightforward. The installation CD contains Win16 and Win32 versions as well as a features demo. You can choose to install the product locally or on the Web server, or you can run a full or partial network installation. Installing the new Web server components is simple. The install program offers you choices between Microsoft IIS, Netscape Enterprise Server, or Netscape Fastrack Server. All you have to do is check the appropriate box, and youıre off. On a Win32 system, a typical installation requires a minimum of 21MB and a maximum of 148MB for the Professional Edition. My installation, which included a number of sample applications, required approximately 50MB.
Crystal Reports 6.0 is packed with new features that will make corporate developers and VARs happy. Seagate has focused on enabling developers to migrate existing reports to the Web by providing tight integration with Microsoft (ISAPI) and Netscape (NSAPI) Web servers. Seagateıs initial attempt at Web publishing in Crystal Reports 5.0 provided basic static HTML reports that could be displayed via a Web browser. Now with Crystal Reports 6.0, reports have come alive through ActiveX, Java, and HTML Smart Viewers that provide dynamic report updates, drilldown, Smart Navigation, and more sophisticated Web formatting.
Smart Viewers are thin-client add-ons that make it easy to deploy reports across platforms without the hassle of setting up new applications on client desktops. Crystal Reports 6.0 comes with Smart Viewers for ActiveX, Java, HTML frames, and plain HTML. Users can view Crystal Reports in any Web browser on any platform just by entering the report URL. Crystal Reports 6.0 automatically detects what browser type the user has and displays the report using the best possible viewer. Presentation quality degrades somewhat with the HTML viewers, but itıs a reasonable trade-off for platform independence. By comparison, the plain HTML viewer displays reports faster than any other viewer, but the user will spend more time viewing reports overall if the report is large, because itıs more difficult to navigate the reports. The HTML frame viewer provides an outline frame to help the user find information in the report faster; however, the report formatting is similar to the plain HTML formatting. For more sophisticated and "tight" formatting, I recommend using the ActiveX or Java viewers. These viewers combine a file manager-like outline control on the left side of the report with a more tightly organized report. These viewers also enable the user to view the report at different zoom levels without having to resize the screen. The ActiveX viewer initialized significantly faster than the Java viewer in Microsoft Internet Explorer 3.02. The Java Applet viewer showed better performance in the Netscape browser, although the initial downloading of the applet does require patience while the Java classes are loaded.
The reports are stored on the Crystal Web Report Server. When the user enters the URL or clicks on a hyperlink containing the URL for the report, a request is sent to your HTTP Web server, which then makes a request to the Crystal Web Report Server. The Crystal server retrieves the report and the data and returns it to the Web server. The report and the data are then displayed in the Smart Viewer in the browser. Unlike reporting products that store a static copy of a report on a Web server that may be aged, when a Smart Viewer opens a Crystal Report, fresh data is pulled from the database ensuring the delivery of up-to-date information. Optionally, the data can be cached to reduce network traffic and enable users to view the report on a page-by-page basis. As an added measure of security, each user can be required to log in to the database ensuring that the data is visible only to those with the appropriate access level.
To improve the report design process, Seagate has revamped the user interface, rounded out the formatting and query functionality, and provided a Smart Runtime Preview Window. Developers can customize the Preview Window to control which features are enabled for users. For new report designers, Crystal Reports 6.0 provides helpful Report and Connectivity Experts that guide you through the creation process. For more advanced designers, Crystal now provides the ability to add report parameters and conditional formatting.
Seagate has also added advanced features for application developers who use Microsoft Visual Basic and Visual InterDev. The Automation Server Support exposes more than 500 properties, methods, and events for accessing and controlling the entire Crystal Report Engine from Microsoft Visual Basic applications and Office97 projects. Also, with this release, developers can now write user-defined functions (UDFs) in any development tool that supports the Microsoft Common Object Model including Visual Basic, Visual J++, Visual C++, and Delphi. If you want to build complete Web database applications that include reports, Seagate has included a new Crystal Active Server Component that allows integration of the Crystal Report Engine directly into Active Server Pages (ASPs) and a Design-Time Control for Visual InterDev.
Before I review the usability of Crystal Reports 6.0 itıs important to note that Seagate has added support for some additional data sources to an already substantial list. Release 6.0 now provides a native database driver for Arbor Essbase for generating reports from multidimensional databases. In addition, Crystal Reports 6.0 provides new database drivers for Oracle8, Informix Universal Server, Symantec ACT! 3.0, and IBMıs DB2 family.
I tested Crystal Reports 6.0 by building a number of reports against the Microsoft Access and Sybase SQL Anywhere demo databases that contained the usual tables of customers, orders, products, and employees. While the databases did not contain more than a few thousand records, they were large enough to test the new report design and Web publishing features adequately. With Crystal Reports 6.0, even inexperienced report designers can create sophisticated new reports quickly using the numerous report experts provided. I recommend that novice report designers or new Crystal Reports users review the User Guide while creating new reports. There are so many design options available that you can easily overlook an important feature. For instance, to add group totals to a report, you should step through the Sort and Top N tabs in addition to the Total tab in the report expert. Helpful tips are provided in the experts, but the User Guide contains more detailed information and examples.
Once the reports were created, the process of publishing them to the Web was a snap. The first step is to post the reports to your Web site. To view the reports, the user starts the browser and enters a URL that points to a particular report. Crystal Reports recognizes what type of browser the user has and determines which Smart-Viewer to display. I tested the reports with Microsoft Internet Explorer 3.02 and Net-scape Navigator 4.0. When using Netscape Navigator the report began to display and then stopped when it ran into a JScript error. It turns out that I had set my browser to a high level of security that did not allow the use of cookies. Crystal Reports uses cookies to identify information about the userıs environment. I changed my preference settings to enable cookies and the report showed up in the Java Smart Viewer without any problems. Because of the security risk of enabling cookies, I recommend that Crystal Reports 6.0 be used for intranet reporting applications rather than Internet applications.
Despite the initial display problem, I like the way information is arranged in the Smart Viewers. Without having to do any extra work, Crystal generated a group tree control for interactive report navigation. The combination of the tree control and the integrated search function made it easy to find specific information without scanning the entire report. This new approach to publishing information to the Web with interactive navigation is far superior to displaying static HTML reports that were designed for paper. Any user familiar with a Web browser can easily find information in a Crystal Web report. (See Figure 1.)
My next test was to integrate my new reports with an application developed with Microsoft Visual InterDev. It was as easy as advertised. The Crystal Design-time ActiveX Control automatically generated the Active Server Page (ASP) code for the reports. You can view the report immediately in the ActiveX SmartViewer in Internet Explorer. Serious application developers will be glad to know that they can also add new reports to applications from within Visual InterDev using the Crystal Design-time Control. This enables developers to create placekeepers for reports while working out the logic of new applications without leaving Visual InterDev. The reports can then be customized later with end user involvement using Crystal Reports 6.0.
Seagate has done a very good job taking its client/server reporting package and transforming it into a solid Web reporting package. The Crystal Web Report Server is ideal for adding Web reports to workgroup intranets used by 10-15 concurrent users. If you require an enterprisewide solution, I recommend you look at Seagate Crystal Info. When designing Web-database applications itıs important to remember that most of the transaction time for each request is due to the speed of the database query rather than the speed of the Web server or the browser viewer. Crystal Info provides a more sophisticated three-tier client/server architecture that is designed to manage querying and reporting centrally. Web-database applications that will be deployed to very large workgroups (remote or local) or to the enterprise would benefit from the improved database query performance of Crystal Info. If you are a Crystal Reports corporate developer, integrator, or VAR, you should seriously consider upgrading to the new release of Crystal Reports 6.0. If you are an end user needing to make serious business decisions based on accurate information, ask your developer or IT group to take a look at this product. With the demand for timely information growing every day, sophisticated Web-based reporting tools such as Crystal Reports 6.0 should become a critical component of every IT toolbox.
