Features and Benefits
top
The authorized guide to the latest edition of the #1 business intelligence software product - Crystal Reports
More than 16 million licenses of Crystal Reports have been shipped
Includes up to the minute information on the features added to Crystal Reports 2008
Comprehensive reference to all aspects of Crystal Reports, for anyone using it
The authors are Business Objects insiders, with unmatched perspectives on real-world implementation of Crystal Reports
Table of Contents
top
Introduction
Introduction to Information Delivery
Spectrum of Business Objects Product Usage
Custom Information Delivery Applications
Enterprise BI Initiatives
Spectrum of BI Tool Users
Content Creators (Information Designers)
Information Analysts
Information Consumers
The Product Family from Business Objects
What Is in This Book
Part I: Crystal Reports Design
Part II: Formatting Crystal Reports
Part III: Advanced Crystal Reports Design
Part IV: Report Distribution and Advanced Report Design with Crystal Xcelsius
Equipment Used for This Book
Web Resources
Intended Audience
Requirements for This Book
Conventions Used in This Book
I Crystal Report Design
1 Creating and Designing Basic Reports
Introducing the Crystal Reports Designer
Crystal Report Sections
Using Toolbars and Menus
Report Design Explorers
Locating and Using the Report Design Explorers
The Workbench and Dependency Checker
Understanding Data and Data Sources
Understanding Direct Access Drivers
Understanding Indirect Access Drivers
Introducing the Database Expert
Creating a New Connection
Using My Connections
Adding Database Objects to Your Report
Reporting on Tables
Reporting on Views
Reporting on Stored Procedures
Reporting on SQL Commands
Joining Database Objects
Understanding the Different Join Types
Using the Report Creation Wizards
Getting Started with the Report Wizards
Using the Standard Report Creation Wizard
Creating a Report Without Wizards
Troubleshooting
Crystal Reports in the Real World-HTML Preview
Crystal Reports in the Real World-SQL Commands
2 Selecting and Grouping Data
Introduction
Understanding Field Objects
Accessing Database Fields
Accessing Formula Fields
Accessing SQL Expression Fields
Accessing Parameter Fields
Implementing Running Total Fields
Using Group Name Fields
Special Fields
Working with Groups
Inserting Groups
Reordering Groups
Using the Group Expert
Grouping on Date/Time Fields
Hierarchical Grouping
Understanding Drill-Down Reports
Creating a Drill-Down Report
Hiding Details on a Drill-Down Report
Troubleshooting
Crystal Reports in the Real World-Group on a Formula
3 Filtering, Sorting, and Summarizing Data
Introduction
Filtering the Data in Your Report
Working with the Select Expert
The Record Selection Formula
Working with the Formula Editor
Learning to Sort Records
Working with the Sort Expert
Creating Effective Summaries
Creating Grand Totals
Creating Group Summaries
Using Group Selection and Sorting
Creating Running Totals
Troubleshooting
Crystal Reports in the Real World-Nesting Formulas
4 Understanding and Implementing Formulas
Introduction
Using the Formula Workshop
Navigating the Formula Workshop with the Workshop Tree
Using the Workshop Formula Editor
Arithmetic Formulas
Date and Time Formulas
String Formulas
Using Type Conversion in Formulas
Control Structures-Conditional and Looping Structures
Variables
Creating Formulas with the Formula Expert
Using the Formula Extractor to Create Custom Functions
The Multipass Reporting Process of the Crystal Reports Engine
Crystal Reports Processing Engine-Pre-Pass #1
Crystal Reports Processing Engine-Pass #1
Crystal Reports Processing Engine-Pre-Pass #2
Crystal Reports Processing Engine-Pass #2
Crystal Reports Processing Engine-Pass #3
Troubleshooting
Crystal Reports in the Real World-Custom Functions
5 Implementing Parameters for Dynamic Reporting
Introduction
Understanding the Value of Parameters
Creating and Implementing Parameters Fields
Reviewing Parameter Field Properties
Creating Parameter Fields
Setting Default Values for Parameter Fields
Implementing Parameter Fields
Using Parameters with Record Selections
Using Parameters with Top/Bottom N Group Selections
Creating and Implementing Dynamic and Cascading Parameters
Using the Parameter Panel in the Preview Tab
Troubleshooting
Crystal Reports in the Real World-Custom Filtering
II Formatting Crystal Reports
6 Fundamentals of Report Formatting
Introduction
Positioning and Sizing Report Objects
Modifying Object Properties for Formatting Purposes
Exploring the Format Editor Dialog Common Options
The Common Tab of the Format Editor
The Border Tab of the Format Editor
The Font Tab of the Format Editor
The Hyperlink Tab of the Format Editor
Other Format Editor Tabs
Combining and Layering Report Objects
Configuring Report Page and Margin Properties
Troubleshooting
Crystal Reports in the Real World-Exporting Options
Crystal Reports in the Real World-Referencing External Resources
7 Working with Report Sections
Introduction
Formatting Report Sections
Modifying Report Section Properties
The Section Expert Settings and Functionality
Using Multiple Report Sections
Resizing Report Sections
Inserting New Report Sections
Deleting Report Sections
Merging Report Sections
Troubleshooting
Crystal Reports in the Real World-Advanced Formatting
Crystal Reports in the Real World-Advanced Formatting on Drill-Down Reports
8 Visualizing Your Data with Charts and Maps
Introduction
Using the Chart Expert
Using the Chart Expert Type Tab
Using the Chart Expert Data Tab
Using the Chart Expert Axes Tab
Using the Chart Expert Options Tab
Using the Chart Expert Color Highlight Tab
Using the Chart Expert Text Tab
Using the Map Expert
Using the Map Expert Data Tab
Using the Map Expert Type Tab
Using the Map Expert Text Tab
Modifying Chart and Map Properties
Modifying Chart Properties
Format Chart Options
Using and Creating Chart Templates
Specifying Chart Size and Position
Modifying Chart Options
Specifying Series Options
Specifying X-Axis and Y-Axis Options
Specifying Selected Item Formatting Options
Specifying 3D Viewing Angle Options
Modifying Map Properties
Troubleshooting
Crystal Reports in the Real World-Complex Charts
9 Custom Formatting Techniques
Introduction
Making Presentation-Quality Reports
Common Formatting Features
Working with ToolTips
Lines and Boxes
Creating a Vertical Text Watermark
Conditional Formatting-Using Data to Drive the Look of a Report
Applying Formatting from Another Field
Report-to-Report Linking and the Hyperlink Wizard
Report-to-Report Linking
Hyperlink Wizard
Find in Field Explorer
Barcode Support
Convert to Barcode
Convert from Barcode
Crystal Reports in the Real World-Advanced Charting
III Advanced Crystal Report Design
10 Using Cross-Tabs for Summarized Reporting
Introduction to Cross-Tabs
Benefits of Cross-Tabs
Leveraging Experience with the Spreadsheet Format
Horizontal Expansion
Custom Formatting
Using the Cross-Tab Wizard
Using Top N with Cross-Tabs Reports
Using Advanced Cross-Tab Features
Setting Relative Position
Inserting a "Percentage of" Summary
Horizontal and Vertical Placement
Inserting Summary Labels
Adding a Display String
What's New in Cross-Tabs
New Cross-Tab Functions Defined
Crystal Reports in the Real World-Advanced Cross-Tabs
11 Using Record Selections, Sort Controls, and Alerts for Interactive Reporting
Introduction
Creating Advanced Record Selection Formulas
Record Selection Review
Displaying Record Selections
Dealing with Dates
Working with Strings
Pushing Record Selections to the Database
An Introduction to SQL Expressions
Adding Alerting to Your Reports
Creating, Editing, and Using Alerts
Using Alerts in BusinessObjects Enterprise
Performance Monitoring and Tuning
Group By On Server
SQL Expressions in Record Selections
Use Indexes on Server for Speed
On-Demand or Reduced Number of Subreports
Performance Monitor
Dynamic Cascading Prompts
Sort Controls
Crystal Reports in the Real World-Web Report Alert Viewing
Troubleshooting
12 Using Subreports for Advanced Reports
Introduction to Subreports
Common Subreport Usage
Adding Subreports to Your Reports
Understanding Linked Versus Unlinked Subreports
Considering Subreport Execution Time and Performance
Using Variables to Pass Data Between Reports
Emulating Nested Subreports
Troubleshooting
Crystal Reports in the Real World-Multiple Subreports
13 Using Formulas and Custom Functions
Introduction
Choosing a Formula Language: Crystal Versus Basic Syntax
Understanding Syntax Differences
Why Basic Syntax Was Added
Selecting the Best Syntax for You
Using Brackets in Formulas
Using Characters in Formulas
Recent Improvements to Formulas
Manipulating Memo Fields in Formulas
Working with the Additional Financial Functions
Creating Custom Functions in Your Reports
Sharing Custom Functions with Others
Understanding Runtime Errors
Crystal Reports in the Real World-Custom Functions
14 Designing Effective Report Templates
Understanding the Importance of Reuse in Reporting
Understanding Report Templates
Using Report Templates
Using Existing Crystal Reports as Templates
Understanding How Templates Work
Creating Useful Report Templates
Using Custom Functions as Replacements for Data-Dependent Business Logic
Using the CurrentFieldValue Function
Using Template Field Objects
Using Report Templates to Reduce Report Creation Effort
Applying Multiple Templates
Exporting Capabilities in Crystal Reports
Crystal Reports in the Real World-Standardized Templates
Troubleshooting
15 Additional Data Sources in Crystal Reports
Understanding the Additional Crystal Reports Data Sources
Connecting to COM or .NET Data Sources
Leveraging Legacy Mainframe Data
Handling Complex Queries
Runtime Manipulation of Data
Review an .ADO.NET Data Provider
Connecting to an ADO.NET XML Recordset
Connecting to Java-Based Data Sources
JavaDir
JavaBeansClassPath
Connecting to XML Data Sources
Connect to a Local XML Data Source
Connect to an HTTP(S) Data Source
Connect to a Web Service Data Source
Introduction to the Integration Kits
Honor the Security
Access to All the Data
Sample Reports
Leverage the Metadata of the ERP Application
Provide Real-Time Access to Data
SAP Integration Kit
Reporting Off R3 Data
Reporting Off BW Data
Viewing the Reports
PeopleSoft Integration Kit
Reporting Off PeopleSoft Data
Viewing the Reports
Siebel Integration Kit
Troubleshooting
Crystal Reports in the Real World-Leveraging XML as a Data Source
16 Formatting Multidimensional Reporting Against OLAP Data
Introduction to OLAP
OLAP Concepts and OLAP Reporting
Recently Added or Changed OLAP Features in Crystal Reports
Using the OLAP Report Creation Wizard and OLAP Expert
Specifying an OLAP Data Source
Specifying OLAP Rows and Columns
Specifying OLAP Dimension Slices (Filters) and Pages
Adding Report Styles in the OLAP Report Creation Wizard
Adding Charts via the OLAP Report Creation Wizard
Customizing Styles in the OLAP Expert
Customizing Labels in the OLAP Expert
Advanced OLAP Reporting
Interacting with the OLAP Grid
Pivoting the OLAP Grid
Using the Cube View Functionality
Using Charts and Maps Based on OLAP Grids
Troubleshooting
Crystal Reports in the Real World-OLAP Summary Report with Drill-Down
IV Report Distribution and Advanced Report Design with Crystal Xcelcius
17 Introduction to Crystal Reports Server, Crystalreports.com, and the Crystal Reports Viewer
What Is Crystal Reports Server?
Crystal Reports Server Architecture
Client Tier
Application Tier
Intelligence Tier
Processing Tier
Data Tier
Crystal Reports Server Applications
Central Configuration Manager
Use the Central Management Console (CMC)
Launch InfoView
What Is Crystalreports.com?
Getting Started with Crystalreports.com
Adding Reports to Crystalreports.com
Sharing Reports on Crystalreports.com
Offline Viewing with the Crystal Reports Viewer
Troubleshooting
18 Crystal Reports Java Components
Overview of the Crystal Reports Java Reporting Component
Components Run on the Web Application Server
Components Are Generally Less Scalable
Components Are 100% Pure Java
Understanding the Java Reporting Components Architecture
Differences with the Java Reporting Engine
Supported File Formats
Support for User Function Libraries in Version XI of the Java Reporting Components
The Java Reporting Engine Uses JDBC
Configuring the Application Server
Delivering Reports in Web Applications
The setReportSource Method
The processHttpRequest Method
Customizing the Toolbar
Customizing the Group Tree
Using the Crystal Tag Libraries
Exporting Reports to Other File Formats
Exporting via the Toolbar Button
Exporting via Code
Printing Reports from the Browser
Common Programming Tasks
Passing Parameters
Setting Data Source Information
Developing with a Visual Development Environment
19 Crystal Reports Microsoft .NET Components
Understanding Microsoft's .NET Platform
Understanding the Different Crystal .NET Components
An Overview of the Crystal Reports 2008 .NET Components
The Report Designer
Understanding the Report Designer's User Interface Conventions
The Property Browser
The Report Engine Object Model
Opening Reports
Exporting Reports
Printing Reports
Delivering Reports with the Windows Forms Viewer
The ReportSource Property
Customizing the Windows Forms Viewer
Delivering Reports with the Web Forms Viewer
Customizing the Web Forms Viewer
Database Credentials
Setting Parameters
Understanding the Report Application Server Bridge
Creating a Crystal Reports Web Service
Troubleshooting
20 Basic Xcelsius Development
Introduction to Dashboards with Xcelsius
Xcelsius Development Paradigm
Xcelsius Integrated Development Environment
Components
Properties
Object Browser
Data Manager
Basic Component Categories
Single Value Components
Charts
Selectors
Containers
Alerts
Dashboard Design Enhancements
Color Schemes
Themes
Backgrounds
Label Text
Image Component
Publishing and Deployment
Adobe SWF
Adobe PDF Document
Microsoft PowerPoint
Microsoft Word
Business Objects Enterprise
HTML
Crystal Reports
Troubleshooting
21 Advanced Xcelsius Visualization and Connectivity
Advanced Global Features and Techniques
Dynamic Visibility
Chart Drill Down
Insert Filtered Rows
Map Components
Multilayer Dashboards
Advanced Functionality with Excel Logic
Conditional Formulas
Lookup Functions
Concatenating Values
Working with Dates
Advanced Connectivity and Integration
Data Manager Usage Tab
BusinessObjects Enterprise Integration
Live Office Connectivity
Universe Query with Query as a Web Service
Web Service Connection
Excel XML Maps
Using Flash Variables
Index
About the Authors
top
About the Lead Author
Neil FitzGerald is an entrepreneur who has successfully started or contributed to multiple consulting companies in the IT consulting domain. Neil combined his bachelor's degree in computer science from Queen's University in Kingston, Canada and his MBA from the Ivey School of Business at the University of Western Ontario with his more than 8 years of experience at Business Objects in a variety of senior roles to help provide information solutions to Fortune 500 companies across North America. He has spent more than 13 years in the information delivery domain and is available for onsite or remote consulting to companies large and small. Neil can be contacted at neil--fitzgerald@hotmail.com.
About the Contributing Authors
Bob Coates has worked for Business Objects, an SAP company (through the Crystal Decisions and Business Objects acquisitions), for more than 11 years. While there he worked in technical support, global services, and sales consulting. Presently Bob is a principal sales consultant working on the SAP Synergy Team-a branch of the Strategic Technology Group focused on the top 100 SAP customers. Bob would like to thank his wife Amanda for her infinite patience and support.
Ryan Goodman is the founder of Centigon Solutions Inc. As a previous technical evangelist and sales consultant at Infommersion and then Business Objects, Ryan has implemented hundreds of Xcelsius projects spanning more than 4 years. His interactive data visualization and design background coupled with his business insight and technical aptitude have made him one of the top Xcelsius experts in the world. Ryan continues to push the envelope and evangelize Xcelsius on his blog: www.ryangoodman.net/blog.
Michael Voloshko is a principal solutions architect for the financial services vertical at Business Objects, an SAP company.