The Report Catalog database is created as part of the Reporting Services installation process.. The Report Explorer and Report Viewer web parts were originally made available as part of
Trang 1This is known as deploying or publishing the report Let me assure you, reports pass
through deployment much easier than you and I passed through adolescence!
Report Server
The Report Server is the piece of the puzzle that makes Reporting Services the product
it is This is the software environment that enables you to share your report with the masses—at least, those masses who have rights to your server Figure 1-5 shows the basic structure of the Report Server
Report Catalog
When a report is deployed to a Report Server, a copy of the report’s RDL definition
is put in that server’s Report Catalog The Report Catalog is a set of databases used to
store the definitions for all of the reports available on a particular Report Server It also stores the configuration, security, and caching information necessary for the operation
of that Report Server
Even though you may use any ODBC- or OLE DB-compliant data source to supply data to your reports, the Report Catalog database can only exist in SQL Server 2005
Figure 1-5 Report Server architecture
Trang 2or SQL Server 2008 The Report Catalog database is created as part of the Reporting
Services installation process Except for creating regular backups of any Report Catalog databases, it is probably a good idea to leave the Report Catalog alone
Report Processor
When a report needs to be executed, the report processor component of the Report
Server directs the show The report processor retrieves the report from the Report
Catalog and orchestrates the operation of the other components of the Report Server
as the report is produced It takes the output from each of the other components and
combines them to create the completed report
Data Providers
As the report processor encounters dataset definitions in the report RDL, it retrieves
the data to populate that dataset It does this by first following the instructions in the
report’s data source for connecting to the database server or file that contains the data
The report processor selects a data provider that knows how to retrieve information
from this type of data source
The data provider then connects to the source of the data and selects the information
required for the report The data provider returns this information to the report processor, where it is turned into a dataset for use by the report
Renderers
Once all the data for the report has been collected, the report processor is ready to
begin processing the report’s layout To do this, the report processor looks at the format requested This might be HTML, PDF, TIFF, or one of several other possible formats
The report processor then uses the renderer that knows how to produce that format
You will learn more about the capabilities of each of these report formats in Chapter 9 The renderer works with the report processor to read through the report layout The report layout is combined with the dataset, and any repeating sections of the report are duplicated for each row in the dataset This expanded report layout is then translated
into the requested output format The result is a report ready to be sent to the user
Request Handler
The request handler is responsible for receiving requests for reports and passing those
requests on to the report processor Once the report processor has created the requested report, the request handler is also responsible for delivering the completed report In
the next section, you will learn about the various methods the request handler uses for
delivering reports
Trang 3Report Delivery
We have discussed how a report is created by the Report Server What we have not discussed is where that report is going after it is created The report may be sent to a user through the Report Manager website It may be sent in response to a web service request that came, not from a user, but from another program It may also be e-mailed
to a user who has a subscription to that report
Report Manager Website
One way for users to request a report from the Report Server is through the Report
Manager website This website is created for you when you install Reporting Services
Figure 1-6 shows a screen from the Report Manager website
The Report Manager website organizes reports into folders Users can browse through these folders to find the report they need They can also search the report titles and descriptions to locate a report
The Report Manager also includes security that can be applied to folders and reports With this security, the site administrator can create security roles for the users who will be accessing the site These security roles control which folders and reports
a user is allowed to access You will learn about security when we look at the Report Manager in Chapter 10
In the Report Manager, reports are always displayed using the HTML format Once
a report has been displayed as an HTML page, the user can then export the report into any of the other available formats
Figure 1-6 The Report Manager website
Trang 4SharePoint/Office Server
SharePoint may also be set up to serve as a means for users to request reports This can
be done in two ways The first uses the Report Explorer and Report Viewer web parts These web parts can be used in a SharePoint web application to allow users to navigate report folders and to view reports on a Reporting Services report server
The Report Explorer and Report Viewer web parts were originally made available
as part of SQL Server 2000 Reporting Services Service Pack 2 They were part of SQL Server 2005 Reporting Services as well The web parts continue to be available in the
2008 release, but their functionality has not been upgraded to take advantage of new
features and functionality
The second means of utilizing Reporting Services through SharePoint involves a tight integration of the two products In this configuration, a Windows SharePoint Services 3.0
or Office SharePoint Server 2007 installation will actually become the host for the report server’s Report Catalog In addition, the SharePoint user interface replaces the Report
Manager website as the user interface for locating and viewing reports, as well as for
managing the report server Accessing reports through SharePoint integration is as easy and intuitive as accessing any other document on the SharePoint site
Subscription Delivery
If the users do not want to go to the report, the request handler can make the report go
to them In other words, users do not necessarily need to come to the Report Manager website to receive a report They can have the report delivered to them through a
subscription service The Report Manager enables users to locate a report on the site
and then subscribe to it so it will be delivered to them in the future
When users subscribe to a report, they provide an e-mail address to which the report will be delivered, either as the body of the e-mail or as an e-mail attachment, depending
on the requested format Users can specify the format for the report at the time they
create their subscription
The site administrator can also set up report subscriptions These function like a
mass mailing, using a list of e-mail addresses Rather than requiring each user to access the Report Manager to create their own subscription, the site administrator can create
one subscription that is delivered to every user in the list
Web Service Interface
In addition to delivering reports to humans, either at their request or on a subscription basis, the request handler can deliver reports to other software applications This is done
through a series of web services A web service is a mechanism that allows programs to
communicate with each other over the Internet
Trang 5A program calls a web service on the Report Server, requesting a particular report in
a particular format The request handler relays this request to the report processor, just like any other request for a report The completed report is returned to the program that originated the request as the response to the web service request
Web services use a standard called Simple Object Access Protocol (SOAP) SOAP is
supported by both Windows and non-Windows environments, so a program running
on a non-Windows computer that supports SOAP can receive a report created by Reporting Services
Diving In
Now that you have been introduced to all of the capabilities of Reporting Services, I hope you are ready to dive in and make it work for you In the next chapter, you will learn about the installation and setup of Reporting Services If Reporting Services has already been installed, you can skip ahead to Chapter 3
In Chapter 3, we make sure you have a firm understanding of database basics before getting to the actual building of reports in Chapter 4 Chapter 3 also introduces you to Galactic Delivery Services (GDS), the company we use as a case study throughout the remainder of the book Even if your database skills are tip-top, you should spend a few minutes in Chapter 3 to get to know GDS
Trang 6In This Chapter
C Preparing for the Installation
C The Installation Process
Issues
Basic Training
Putting the Pieces
in Place: Installing Reporting Services
Copyright © 2009 by The McGraw-Hill Companies Click here for terms of use
Trang 7Before you can begin to enjoy all the benefits of Reporting Services discussed
in Chapter 1, you of course have to install the Reporting Services software Reporting Services installs as part of the SQL Server 2008 installation Before you begin the installation process, however, it is important to understand the structure
of Reporting Services
In this chapter, you will learn about the components that make up Reporting
Services and the three licensed editions of Reporting Services offered by Microsoft Next, you will find out how the components are combined in different types of
Reporting Services installations and see how to plan for each installation type As part of that planning, you will learn about the software that must be in place prior to installing Reporting Services After considering these preliminaries, we will walk you through the installation process
Preparing for the Installation
The most important part of the Reporting Services installation is not what you do as you run the setup program, but what you do before you begin In this section, we discuss the knowledge you need and the steps you should take to prepare for installation With the proper plan in place, your Reporting Services installation should go smoothly and you can create reports in no time
The Parts of the Whole
Reporting Services is not a single program that runs on a computer to produce reports Instead, it is a number of applications, utilities, and databases that work together
to create a report management environment As you plan your Reporting Services installation, it is important that you understand a little bit about each piece of the puzzle and how all these pieces work together to create a complete system
Figure 2-1 shows all the parts that make up a complete Reporting Services
installation Each part has a specific role to play in the development, management, and delivery of reports, or in the management of the Reporting Services environment itself All of these items can be installed as part of the SQL Server 2008 installation process Let’s take a look at each part and see how it fits into the whole
NOTE
Not all Reporting Services installations include all of the items shown in Figure 2-1 The following sections of this chapter discuss the various types of installations and which components they include.
Trang 8The Windows Service
The Reporting Services Windows service is the heart of Reporting Services and is, of
course, installed as part of the Reporting Services installation This service is responsible for the two main interfaces with the report server First, it contains the application that implements the Report Manager website Second, it provides a web service interface for programmatic interaction with the report server
As discussed in Chapter 1, the Report Manager website provides a user interface
for requesting reports and managing the report server The Report Server web service
provides a programmatic interface for requesting reports It also provides an interface
for report server administration
In addition to these two interfaces, the Reporting Services Windows service provides the engine responsible for report rendering This is true whether the report is requested through the Report Manager website, the report server web service, or subscription
delivery As you saw in Figure 1-5 of Chapter 1, this includes fetching the report definition, retrieving the data used in the report, and rendering the report in the desired format
Administration Utilities
The administration utilities are tools for managing the Reporting Services Windows
service and for making changes to its configuration The main administration utility is
the Reporting Services Configuration Manager This tool provides a convenient method for
Figure 2-1 Reporting Services component parts
Trang 9examining and modifying the configuration settings of a Reporting Services installation You learn about the Reporting Services Configuration Manager in more detail in the section “The Reporting Services Configuration Manager,” later in this chapter
The administration utilities can be run on the computer that is hosting the Reporting Services Windows service to manage the configuration on that computer Most of the administrative utilities can also be used to manage a Reporting Services Windows
service that is running on another computer This is called remote administration.
SQL Server 2005/SQL Server 2008
Either SQL Server 2005 or SQL Server 2008 is required to hold the database where Reporting Services stores its Report Catalog database Reporting Services also uses the SQL Server Agent, which you will learn about shortly In addition, databases in SQL Server can be used as data sources for Reporting Services reports
SQL Server Agent
SQL Server Agent is part of SQL Server and is created as part of the SQL Server
installation process It is used by SQL Server to execute jobs scheduled to run at a certain time These jobs might back up a database or transfer information from one database to another Jobs may be scheduled to run once, or they may run on a regular basis, such as once a day or once a week
Reporting Services also uses the SQL Server Agent to execute scheduled jobs These jobs are used to run reports and distribute the results In Chapter 1, you learned about users who subscribe to a report When users subscribe to a report, they ask for it to
be run and delivered to them on a regular basis When a user creates a subscription, Reporting Services creates a SQL Server Agent job to handle that subscription
For example, our production manager in Chapter 1 wanted an inventory report to be printed every four hours during the workday He subscribes to the inventory report and creates a delivery schedule of 8:15 a.m., 12:15 p.m., and 4:15 p.m When this subscription is created, Reporting Services creates a SQL Server Agent job scheduled to run at 8:15 a.m., 12:15p.m., and 4:15 p.m each day When the job runs, it instructs the Reporting Services Windows service to run the report and e-mail it to the production manager
The Report Server and Report Server Temp DB Databases
During the Reporting Services installation process, two databases are created within
SQL Server: the Report Server and Report Server Temp DB databases The Report
Server database is used to store the Report Catalog (Recall from Chapter 1 that the
Report Catalog holds the information about all of the reports deployed to a Report Server.) The Report Server database also holds information about the virtual structure that contains these reports This includes such things as the folder structure displayed
by the Report Manager and the security settings for each folder and report
Trang 10As the name implies, the Report Server Temp DB database is used as temporary
storage for Reporting Services operations Information can be stored here to track the
current users on the Report Manager website Short-term copies of some of the most
recently executed reports are also stored here in what is known as the execution cache.
Sample Reports and the AdventureWorks Database
In previous versions of SQL Server, the sample code and sample database could be
installed as part of the SQL Server installation process Beginning with SQL Server
2008, the samples are now downloaded from the Internet From the Start menu, select All Programs | Microsoft SQL Server 2008 | Documentation and Tutorials | Microsoft SQL Server Sample Overview for instructions on downloading and installation
Business Intelligence Development Studio/Visual Studio/
Standalone Report Builder
As discussed in Chapter 1, Reporting Services reports are created using the Business
Intelligence Development Studio, Visual Studio, or the Standalone Report Builder
All of these report development environments function exactly the same There is no
difference between a report created in the Business Intelligence Development Studio,
Visual Studio, or the Standalone Report Builder
If you are going to use the Business Intelligence Development Studio for creating
reports, you need to install it as part of the Reporting Services installation process The same is true with the Standalone Report Builder If you plan to create reports using
Visual Studio, you need to purchase and install it separately Visual Studio does not
come with Reporting Services
Documentation
The final piece of Reporting Services is the documentation The bulk of this documentation
is found in the SQL Server Books Online After Reporting Services is installed, you can view the SQL Server Books Online through your Start menu You’ll find it under All
Programs | Microsoft SQL Server 2008 | Documentation and Tutorials | SQL Server
Books Online There is also a set of help screens for the Report Manager interface that
can be accessed through the Report Manager website
Editions of Reporting Services
Reporting Services can be licensed in five different editions: Workgroup Edition, Web Edition, Standard Edition, Enterprise Edition, and Developer Edition There is also
an Evaluation Edition, which does not require a license, but it can only be used for a