Tải bản đầy đủ (.pdf) (10 trang)

Microsoft SQL Server 2005 Developer’s Guide- P36 pps

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (247.8 KB, 10 trang )

Chapter 9: Reporting Services 329
Programmability
Reporting Services provide a full range of APIs that developers can use to incorporate
Reporting Services functions into custom Web or Windows applications. You can
also develop your own components and extensions to perform specialized functions
relevant to your own business needs.
Installing Reporting Services
Reporting Services contains both server-side components and client-side components.
Even though clients that connect to SQL Server require a client access license, the
client-side components of Reporting Services can be installed on any computer.
The server-side components require a SQL Server license. SQL Server 2005
provides two ways to install Reporting Services components: you can use the SQL
Server Installation Wizard, or you can install Reporting Services from a command
prompt.
Installing from the SQL Server Installation Wizard
To install Reporting Services using the SQL Server Installation Wizard, you select
Reporting Services on the Components To Install page. To install the default
configuration of Reporting Services, you also need to select the SQL Server Database
Services option. The Components To Install page is used to specify a Report Server
installation and does not include authoring or administering tools that a Report Server
needs for deployment. On the Components To Install page, click the Advanced button
to display the Feature Selection page, where you can choose which components to
install. You can choose to install server-side components or client-side components
or both.
Server Components The following lists the server-side components that are included
with the installation of Reporting Services.

Report Server The Report Server stores metadata and defi nitions for objects
in a report server database. When the Report Server component is installed, the
two services that make up its implementation, a Microsoft Windows service
and an ASP.NET Web service that runs on Microsoft Internet Information


Services (IIS), are employed on the host computer.
330 Microsoft SQL Server 2005 Developer’s Guide

Report Server Database Two SQL Server databases are used for internal
storage for a Report Server instance. One database, named ReportServer,
stores data that is used on an ongoing basis; the other database, called
ReportServerTembDB, is used for temporary storage.

Report Manager The Report Manager, installed by default with Report
Server, is used to manage one instance of Report Server.

Report Builder The Report Builder tool is used to create ad hoc reports in
a Web-based, visual environment. The Report Builder is available when the
Enterprise, Developer, or Evaluation Edition of SQL Server 2005 is installed.

Reporting Services Confi guration The Reporting Services Confi guration
tool is installed with a Report Server instance and is used to customize or
deploy a Report Server installation.
Client Components The following list describes the Reporting Services client-side
components that can be installed on client computers and do not require a SQL
Server license.

Report Designer The Report Designer is a visual tool that allows you to
create, edit, and publish reports to the Report Server. This tool runs within
Visual Studio 2005.

Model Designer The Model Designer is a tool that allows you to specify data
relationships that will be used to create reporting models for ad hoc reports.
This tool runs within Visual Studio 2005.


Command-prompt utilities Several command-line tools are available
to help you confi gure and manage a Reporting Services installation. The
following tools can be installed to perform Report Server administration tasks
from the command line:
rsconfig Used to change Report Server Database connection settings
rs Scripting host used to process Visual Basic scripts
rskeymgmt Used to back up and restore the Report Server encryption keys

SQL Server Management Studio The Management Studio is a management
environment that allows you to manage your SQL Server components servers
from a common place.
Chapter 9: Reporting Services 331

SQL Server Confi guration Manager The SQL Server Confi guration Manager
allows you to set and manage properties of the Report Server Windows service.
You can use the Confi guration Manager for initialization and scheduling of Report
Server actions.
Installing from the Command Prompt
A Setup.exe program is supplied that allows you to install Reporting Services from
a command-line prompt. You can customize the way Reporting Services is installed
by specifying properties on the command line or in an .ini file. The following
output lists the syntax, and the available properties for the command-line or .ini file
installation are shown in Tables 9-1 and 9-2.
Setup /?
Setup
[/i package_file | package_code]
{/settings ini_file | property1=setting1 property2=setting2 }
[{/qn}]
[/l*v log_file]
setup

/x package_code
[/qn]
[/l*v log_file]
Table 9-1 Reporting Services Command-Line Installation Options
Syntax Description
/? Displays syntax help for arguments.
/i package_file | package_code Package_file names the Windows installation file (an .msi file) to
use for Reporting Services installation. Package_code names the
.msi file to use when setup is run in maintenance mode.
/settings ini_file |
property1=setting1 property2=setting2
Ini_file names the .ini file that contains the property settings for
the installation.
/qn Specifies to run the setup unattended; no user interface displayed.
/l*v log_file Log_file specifies the path and name of a verbose log file for the
Windows Installer log options. If omitted, no log file is created.
/x package_code Package_code names the .msi file to use when uninstalling
Reporting Services.
332 Microsoft SQL Server 2005 Developer’s Guide
Property Description
INSTALLDIR=“RS_exec_folder_path” Names folder for installed files.
USERNAME=“user_name” User registering product.
COMPANYNAME=“company_name” Company registering product.
REINSTALL=All Installs all previously installed features of Reporting Services.
REINSTALLMODE={ omus | amus } Sets level of processing to perform by Setup.
O Reinstall file if missing or newer
A Reinstall all files
M Rewrite required Registry entries for hives HKEY_LOCAL_MACHINE or
HKEY_CLASSES_ROOT
U Rewrite required Registry entries for hives HKEY_CURRENT_USER or

HKEY_USERS
S Reinstall shortcuts and icons
PERSEAT=“per_seat_lic” Number of per-seat licenses purchased. Cannot be used with PERPROCESSOR
property.
PERPROCESSOR=“per_proc_lic” Number of processor licenses purchased. Cannot be used with PERSEAT property.
PIDKEY=cdkey REQUIRED. The 25-character product ID key.
RSACCOUNT=“domain\logon_name” Optional. Applies to the RS_Server feature. The domain is limited to
254 characters, and the logon_name is limited to 20 characters. Default
value assigned by current operating system:
Windows 2000 Local System
Windows XP Local System
Windows Server 2003 Network Service
RSPASSWORD=“password” Optional. Applies to the RS_Server feature. Corresponds to the user name
specified for the RSACCOUNT property. Limited to 255 characters. Default
value is null.
RSCONFIGURATION={ default |
filesonly }
Optional. Specifies how a report server instance is installed. The default
installation requires a local database engine instance and cannot be installed
as a virtual server. The files only installation installs the program files and
minimally configures a report server installation.
RSAUTOSTART={ 1 | 0 } Optional. Applies to the RS_Server feature. Specifies whether to start the
Report Server automatically at Windows startup. 1=true, 0=false. Default
value is 1=true.
Table 9-2 Reporting Services Setup .ini File Options
Chapter 9: Reporting Services 333
Property Description
RSVIRTUALDIRECTORYSERVER=
“virtualdirectory”
Optional. Applies to the RS_Server feature. Specifies the virtual directory

for Report Server. Limited to 50 characters. Default value is ReportServer.
Characters not valid in virtual directory names:
\ (backslash) “ (quotation mark)
/ (slash mark) < > (angle brackets)
: (colon) | (vertical bar)
* (asterisk) ; (semicolon)
? (question mark) @ (at sign)
= (equal symbol) & (ampersand)
+ (plus sign) $ (dollar sign)
{ } (braces) ^ (circumflex)
[ ] (brackets) ` (accent grave)
, (comma) . (period)
RSVIRTUALDIRECTORYMANAGER=
“virtualdirectory”
Optional. Applies to the RS_Server feature. Specifies the virtual directory for
Report Manager. Default value is Reports.
RSDATABASESERVER=
“servername\instancename”
Optional. Applies to the RS_Server feature. Specifies the SQL Server instance
that hosts the report server database. Default value is the default instance of
SQL Server on the local machine.
RSDATABASENAME=
“ReportServerDatabase”
Optional. Applies to the RS_Server feature. Specifies the name of the
ReportServer database that the Report Server will use to store its metadata.
Minimum limit of 1 character, maximum limit of 117 characters. Default value
is ReportServer. Rules for name generation:
1. First character of name must be a letter or an underscore “_” character.
The characters “@” and “#” cannot be used in the first position.
2. Subsequent characters can be letters, decimal numbers, or the “@”,

“$Embedded spaces or special characters are not allowed.
RSDATABASEDATAFILELOCATION=
“database_file_location”
Optional. Applies to the RS_Server feature. Specifies the folder where the
ReportServer database data file is stored. Must exist on the same computer
that hosts the SQL Server instance that is hosting the report server database.
RSDATABASELOGFILELOCATION=
“database_logfile_location”
Optional. Applies to the RS_Server feature. Specifies the folder where the
report server database log files are stored. Must exist on the same computer
that hosts the SQL Server instance that is hosting the report server database.
RSSETUPACCOUNT=“logon_name” Optional. Applies to the RS_Server feature. Specifies the SQL Server logon that
is used by Setup. Default value is the credentials of the user running Setup.
The account must belong to an administrator and must have permissions to
create logins, create roles, create databases, and assign permissions to users.
Table 9-2 Reporting Services Setup .ini File Options (continued)
334 Microsoft SQL Server 2005 Developer’s Guide
Property Description
RSSETUPPASSWORD=“password” Optional. Applies to the RS_Server feature. Required if RSSETUPACCOUNT
property is specified. Specifies the password for SQL Server logon. Default
value is null.
RSSQLACCOUNT=“domain
\logon_name”
Optional. Applies to the RS_Server feature. The domain is limited to 254
characters, and the logon_name is limited to 20 characters. If RSSQLACCOUNT
is a SQL login, the RSDATABASESECURITYMODE property must be set to “SQL”.
RSSQLPASSWORD=“password” Optional. Applies to the RS_Server feature. Required if RSSQLACCOUNT
property is specified. Limited to 255 characters. Specifies the password for the
SQL Server credentials specified in RSSQLACCOUNT.
RSDATABASESECURITYMODE=“SQL” Optional. Applies to the RS_Server feature. If omitted, RSSQLACCOUNT is

assumed to be a Windows user account.
RSEMAILSMTPSERVER=“servername” Optional. Applies to the RS_Server feature. Specifies the SMTP server that is
used to deliver reports.
RSEMAILFROM=“” Optional. Applies to the RS_Server feature. Specifies the e-mail address that
appears in the From line.
RSREDIRECTTOMANAGER={ 0 | 1 } Optional. Applies to the RS_Manager feature. Specifies whether Setup will add
redirection from the top-level Web site to the Report Manager virtual directory.
1=true, 0=false. Default value is 0=false.
RSUSESSL={ 0 | 1 } Optional. Applies to the RS_Server feature. Specifies whether the report server
requires Secure Sockets Layer (SSL) connections. 1=true, 0=false. Default
value is 0=false.
RSSAMPLESFILELOC=“path” Optional. Applies to the RS_Samples feature. Path where the samples are
installed. Default value is the Reporting Services installation directory.
RSSAMPLESDATABASESERVER=
“servername\instance”
Optional. Applies to the RS_AdventureWorks feature. Default location is the
value specified in RSDATABASESERVER.
RSWEBFARMSERVER=servername\
instancename
Optional. Applies to the RS_Server feature. Specifies the computer running the
Report Server installation using the existing ReportServer database.
RSWEBFARMACCOUNT=“domain\
username”
Optional. Specifies the Windows account permission specified in the
RSWEBFARMSERVER property.
RSWEBFARMPASSWORD=“password” Optional. Applies to the RS_Server feature. Specifies the password for the
username specified in the RSWEBFARMACCOUNT property.
ADDLOCAL=“feature_selection” Specifies the features to be installed for an installation in the form of
a comma-delimited list.
REMOVE=“feature_selection” Specifies the features to be removed.

Table 9-2 Reporting Services Setup .ini File Options (continued)
Chapter 9: Reporting Services 335
The feature_selection parameters used with the ADDLOCAL and REMOVE
properties are listed in Table 9-3.
You can also specify Setup command-prompt properties using an .ini file. Use
the /settings ini_file argument on the command line to specify your installation
.ini file. The first entry in the .ini file must contain the string “[Options]”.
Component Feature Value Properties
Report Server Web service,
Report Server Windows service,
Reporting Services Configuration tool
RS_Server RSACCOUNT,
RSPASSWORD,
RSAUTOSTART,
RSCONFIGURATION,
RSVIRTUALDIRECTORYSERVER,
RSDATABASESERVER,
RSDATABASENAME,
RSDATABASEFILELOCATION,
RSDATABASELOGFILELOCATION,
RSSETUPACCOUNT,
RSSETUPPASSWORD,
RSSQLACCOUNT,
RSSQLPASSWORD,
RSEMAILSMTPSERVER,
RSEMAILFROM,
RSDATABASESECURITYMODE,
RSUSESSL,
RSWEBFARMSERVER,
RSWEBFARMACCOUNT,

RSWEBFARMPASSWORD
Report Manager RS_Manager RSVIRTUALDIRECTORYMANAGER,
RSREDIRECTTOMANAGER
Report Designer, Report Model Designer SQL_WarehouseDevWorkbench None
Reporting Services command-line utilities RS_Tools None
Administration tools RS_Admin_Tools None
Product documentation RS_BooksOnline_<language> None
Sample reports, sample applications RS_Samples RSSAMPLESFILELOC
AdventureWorks OLTP database RS_AdventureWorks RSSAMPLESDATABASESERVER
Table 9-3 Parameters Used with the ADDLOCAL and REMOVE Properties
336 Microsoft SQL Server 2005 Developer’s Guide
The following listing shows an example .ini file that sets some of the Reporting
Services arguments:
[Options]
USERNAME=DOTECA
COMPANYNAME=TECA_Inc
ADDLOCAL=RS_Server
RSAUTOSTART=1
RSEMAILFROM=""
Report Server
The Report Server is the central component of Reporting Services. The Report
Server is the primary rendering and distribution engine; processing report requests
and retrieving report formatting, data, and properties. The Report Server uses the
Report Definition Layout (RDL) files that are created by the Report Designer and
renders the report into the desired output format. Figure 9-2 shows an overview of
the functionality provided by the Reporting Services Report Server.
The Report Server is implemented as two services, a Web service and a Windows
service. The Web service is an ASP.NET-based application that exposes an HTTP
SOAP endpoint that allows client applications to access the Report Server. The
Windows service provides report delivery services and scheduling services. These

two services working together make up a single Report Server instance.
The Report Server handles all of the essential report generation and distribution
tasks. When a user requests a report or a report is deployed to an end user, the Report
Figure 9-2 Report Server overview
Reporting
Manager
Report
Designer
Data Retrieval
Security
Rendering
Report Server
Web Services
Delivery
Data
Sources
Reports
Chapter 9: Reporting Services 337
Server checks the report’s security attributes to ensure that the user has permissions
to the report itself as well as to the database objects that are used by the report. If
the user has the required permissions, then the Report Server will retrieve the report
definition from the ReportServer database and render the report according to the
format specified in the RDL. As the report is rendered, the Report Server will access
all of the required data sources, retrieve the data, and build the report. Once the
report has been created, the Report Server handles distributing the report to all of
its predefined delivery targets. The Report Server caches the retrieved results in an
intermediate format for a predefined amount of time. When the reports are cached,
all of the required data retrieval and rendering steps have already been completed
and the Report Server simply needs to distribute the cached report to the end user.
The Report Server contains subcomponents that include processors and extensions.

Processors cannot be modified or extended, as they are used to support the consistency
of the reporting system. Extensions are processors that perform specific functions.
Default extensions are provided, but third-party developers can create additional
extensions to replace or extend the processing ability of the Report Server.
Report Server Processors
There are two types of Report Server processors: a Report Processor and a Scheduling
and Delivery Processor. The Report Processor retrieves a requested report definition
or model, combines data from the data source with the layout information, and renders
it in the desired format. The Scheduling and Delivery Processor runs reports that are
triggered from a schedule and delivers the reports to target destinations.
Report Processor
The Report Processor handles two types of processes: report processing and model
processing.
Report Processing When a request for a report that has been saved in the ReportServer
database is made, the Report Processor retrieves the report from the ReportServer
database, initializes any variables or parameters, and performs preliminary preparations
to the report for the incoming data in accordance with the report definition. A connection
is then made to the data source and the data is retrieved. The Report Processor combines
the report data being retrieved with the predetermined report layout. For each section
in the report, the data is processed by row, including header and footer sections, group
sections, and detail sections. Also at this time, any aggregate functions or expressions are
processed. The report is then paginated and rendered in the appropriate format.
338 Microsoft SQL Server 2005 Developer’s Guide
Model Processing Model processing occurs when a user has built an ad hoc report,
also known as a model-based report, using the Report Builder tool. Ad hoc reporting
uses report models that specify metadata and data source connection information.
When a user requests to preview a model-based report, the report layout is displayed,
showing how the report data will look. To actually retrieve the data, the Report
Processor builds a query based on the report model and the report layout. The Report
Processor then binds the data and processes the query, and finally, it merges the data

and report layout to render the report. When a model-based report is published to the
Report Server, the Report Processor creates a report definition based on the report
model information and the report layout information. After it has been published to
the Report Server, the report’s execution is then handled by the Report Processor.
Scheduling and Delivery Processor
The Schedule and Delivery Processor supports scheduled operations using the
delivery extensions to push reports to destinations like e-mail boxes and shared
folders. Reporting Services uses the SQL Server Agent service for this purpose.
The instance of SQL Server that hosts the ReportServer database provides the SQL
Server Agent service that the Report Server uses. When a schedule is created, the
Report Server creates a job in the SQL Server Agent based on specified date and
time values. When the job runs, a report processing request is added to a queue in
the ReportServer database. The Report Server polls the queue regularly for report
processing requests, and if any are found, it will process them immediately in the
order they were received. Scheduled report processing operations are handled by the
Report Server Windows service, instead of the Report Server Web service.
For scheduled report processing to run smoothly, it needs both the SQL Server
Agent service and the Report Server Windows service to be running. If the SQL
Server Agent service is stopped, report processing requests will not be placed on the
queue in the ReportServer database. When the SQL Server Agent service is restarted,
report processing request jobs are resumed, but the requests made during the time the
service was stopped will be lost. If the Report Server Windows service is stopped,
the SQL Server Agent service will continue to place report processing requests on
the queue, but no actual processing of the request will take place. When the Report
Server Windows service is started, the Scheduling and Delivery Processor begins
processing the requests in the order in which they were received.
Report Server Extensions
Report Server Extensions are also processors, but they do very specific functions.
A Report Server requires that at least one Extension of each type of the default

×