Understanding the Core Functions of Crystal Enterprise
In the previous chapters, some of Crystal Enterprise's functionality has been exposed; however, it is the three core functions of content creation, content management, and content distribution.
Creating Content
The majority of content creation is developed using Crystal Reports and Crystal Analysis; however, the definition of content has been expanded to include third-party applications such as text files, Microsoft Office, program files, Word documents, or Adobe PDF.
The previous sections of the book describe the process required to create reports. However, as you might have discovered, there are numerous tools available within Crystal Enterprise to create content. The ad-hoc report application and the Excel plug-in, as described in Chapter 21, are just two of the applications that require the Crystal Enterprise infrastructure to create content.
Content Creation Using Embedded Crystal Report Engines
At the time of this writing, Business Objects had a partnership with Microsoft, BEA, and Borland, such that the Crystal Reports engine had been embedded in Microsoft's Visual Studio, BEA Weblogic Workshop (as seen in Figure 22.2), and JBuilder X.
Figure 22.2. The Crystal Report viewer java tag libraries embedded inside BEA's Weblogic Workshop.
Although the integration of the Crystal Report designer into IDE has made report design a far simpler task, the embedded reporting engines might not be suitable for production environments. This point is further illustrated by the thread governance placed by Business Objects on these engines, making them better suited to development environments. The objective is to migrate the reports from this development environment to a far more robust infrastructurenamely Crystal Enterprise. See Chapters 28, 29, and 30 for more information on these reporting engines.
Content Creation Tools Available with Crystal Enterprise
There are tools within the Crystal Enterprise framework that enable users to create content. These tools enable the user to create or modify Crystal Reports over the Web or create other file types such as Excel spreadsheets using Crystal Reports as a data source.
The Report Application Server API
The Report Application Server or RAS proves an SDK that exposes Crystal Reports and enables developers to build applications that create, modify, and view Crystal Reports over the Web. This service plugs into the Crystal Enterprise Professional or Premium infrastructure framework or can exist on its own in the form of Crystal Enterprise Embedded. The SDK is available in Java, COM, or .NET versions. See Chapters 31, 32, and 33 for more detail.
NOTE
This SDK is not exposed in the Crystal Enterprise Express version.
Excel Add-in
The Excel Add-in enables the user to download and install an Add-in to Microsoft Excel. This Add-in enables the user to import data directly into an Excel spreadsheet. The add-in is available from Business Objects directly as a download.
From this toolbar, the user can then connect to Crystal Enterprise and generate Excel spreadsheets by connection via a Crystal Reports Object or a report instance. When the user is satisfied with the spreadsheet she can save it back to the Crystal Enterprise framework.
The Ad-Hoc Reporting Tool
The Ad-Hoc reporting application is a Web-based application that enables the user to create new or modify existing reports over the Web. Think of it as Crystal Reports but for the Web. The user can select a Business View, an ODBC connection, or an existing report as a data source. After this has been selected, the user walks through the steps of formatting the report. See Chapter 21 for further information on the Ad Hoc application.
NOTE
The Ad-Hoc Reporting Tool is based upon the Report Application Server API; hence it requires the Report Application Server component of Crystal Enterprise to be running.
Content Management
The capability to take reports, Excel spreadsheets, and other business intelligence content and centrally control and manage these pieces of information is one of the key functions of the Crystal Enterprise infrastructure. Consider all the Crystal Reports, Adobe PDF files, or Excel spreadsheets that are saved locally on an employee's workstations. Now consider what the organization stands to lose should a virus destroy this or what happens when an employee leaves and his hard disk is reformatted to make way for a new employee.
The process of getting content into Crystal Enterprise is commonly referred to as publishing content. The publishing of a report results in the report being copied to the Crystal Enterprise infrastructure. An object ID and description, among other fields, are populated and the content is then referenced either using the object ID or the description.
Crystal Enterprise SDK
The Crystal Enterprise infrastructure provides a Java, COM, or .NET SDK for managing content within the infrastructure. For example, the type of functionalities that are exposed are tasks such as scheduling, exporting, and viewing of reports. Additional tasks could include the management of users, folders, objects, and the related security between these objects. The SDK also provides server management calls for managing the Enterprise infrastructure and security.
For example, a common request is to schedule Crystal reports via a third-party scheduler. It is this SDK that would allow a developer to accomplish this.
This topic is discussed in further detail in Chapters 34, 35, and 36.
Content Management Using the Web Desktop
Chapter 23 references the Web Desktopa Web-based application that enables the end user to manage and view their content stored in Crystal Enterprise. It is based upon the Crystal Enterprise SDK and provides users the capability to organize, view, and schedule content. This application provides personalization features permitting users to change the look and feel of their desktop.
Content Management Using the Crystal Management Console
The Crystal Management Console, or CMC, is a Web-based application that gives administrators further control over published content. It also provides the interface to manage the infrastructure, the users, and their related security. The CMC exposes two new pieces of functionality, the capability to audit the infrastructure through the auditing module and the migration of the Crystal Reports repository into the Enterprise infrastructure. Like the Web Desktop, this application is based on the Crystal Enterprise SDK and can be extended within this object model.
Further management capabilities regarding the infrastructure can be found in the Crystal Configuration Manager, or CCM (see Figure 22.3). This application is designed to manage the Crystal services running on Windows servers or the Crystal processors that are running on Unix servers. It allows an administrator to, for example, start or shut down a service or add an additional service to a machine.
Figure 22.3. The Crystal Configuration Manager enables you to add, start, or shut down Windows services or Unix processes.
The CCM and CMC are described in Chapter 26, "Deploying Crystal Enterprise in a Complex Network Environment," and Chapter 27, "Administering and Configuring Crystal Enterprise."
Content Delivery
The third component of the Crystal Enterprise infrastructure is that of content delivery. This is the process of delivering the content in the requested format and requested destination.
This process consists of running the reports, checking associated security to determine what data the requestor is allowed to see, transforming the data to the requested format, and lastly, sending the information to the request destination.
Content delivery can take two formsthe data pull method and the data push method.
The Data Pull Method
The data pull method consists of viewing reports on demand. In this case the user requests that the report be run against a data source and the data is "pulled" from the data source, using a viewer.
Crystal Enterprise supports a wide variety of viewers, both server-side, pure DHTML and client side, that require a download.
The functionality between the viewers is similar and determining the required viewer is a matter of determining the requirements of the user. For example, if this is for an extranet application, the Crystal Enterprise administrator would have no control over what the external user's firewall allows or disallows. The recommendation may be to assign the DHTML viewer to that user.
The Data Push Method
Crystal Enterprise gives administrators and users the capability to push information to specific users and locations, in specific formats and, if required, as a result of specific data changing.
For example, an administrator could set up a Crystal Report to run on the last day of the month and e-mail the user the link to his information. Another example could be that a user subscribes to an alert whereby if sales fall below $200,000 for a particular product, she wants the report in PDF format in her e-mail inbox.
In both of these cases, Crystal Enterprise is pushing the information to the information consumer, based upon some event, scheduled to some destination and in a required format.
The Viewer SDK
Like the Report Application Server and Crystal Enterprise SDKs, the server-side DHTML viewer is exposed via a Java, COM or .NET SDK. Depending on the language used for development and the requirement, different viewers should be used. For example, if the user needs to see the data independent to the layout in the report, a grid viewer could be used to display this. This viewer removes the banded formatting and displays the data in a grid.