You are on page 1of 6

SQL Reporting Services Architecture

Reporting Services Component Overview


Microsoft® SQL Server™ Reporting Services architecture is a set of integrated components. The
architecture is multi-tiered, with an application layer, server layer, and data layer. The architecture is
modular and scaleable, so a single installation can be spread across multiple computers.

The following diagram indicates tools that are included with Reporting Services and SQL Server, and
how custom tools that may be provided by third-party vendors fit into the overall framework. It also
shows the flow of requests and data among the server components, and which components send and
retrieve content from a data store.

Architecture Diagram

Report Manager
Report Manager is a Web-based report access and management tool that is included with Microsoft® SQL Server™ Reporting

Services. Report Manager can be used to perform the following tasks:

• View, search, and subscribe to reports

• Create and manage folders, linked reports, report history, schedules, data source connections, and subscriptions

• Set properties and report parameters

• Manage role definitions and assignments that control user access to reports and folders

Report Manager provides a user interface to a report server. The user interface consists of Web pages and controls. There are

pages for viewing items, setting properties, and creating and modifying subscriptions, schedules, shared data sources, and

roles. You can access items that are stored in a report server by navigating the folder hierarchy and clicking on items that you

want to view or update.

Page 1 of 6
SQL Reporting Services Architecture

The ability to perform a task in Report Manager depends on user role assignment. A user who is assigned to a role that has

full permissions, such as a report server administrator, has access to the complete set of application menus and pages. A user

assigned to a role that has permissions to view and run reports, on the other hand, sees only the menus and pages that

support those activities.

Users can be assigned to multiple roles. Each user can have different role assignments for different report servers, or even for

the various reports and folders that are stored on a single server. Understanding how the role or roles to which you belong

affect your interactions with tools, reports, and report servers can help you anticipate the scope of operations that are

available to you at any given time. For more information about roles, see Understanding Role-based Security.

How to run Report Manager

To run Report Manager, type its URL in the address bar of a Web browser. By default, the URL is

http://<webservername>/reports.

If Reporting Services is installed on your local computer, you can also select Report Manager from the Start menu, from the

SQL Server program group.

Report Manager is installed during setup on the same computer as the report server. You can check the configuration files for

the name of the report server that it connects to.

Browser Types Supported by Reporting Services


In Reporting Services, you use a browser to run reports and Report Manager, a Web-based tool for managing and viewing

report server content.

Although you can export reports to the formats of other desktop applications, the default rendering format for reports is HTML

3.2 or HTML 4.0; the browser type and version determine which format is used. Users can view reports with any browser that

supports HTML 3.2 or HTML 4.0; however, functionality may vary depending on the browser and whether scripting is enabled.

The following table lists the browsers to use for certain kinds of functionality.

This functionality Description Requires


Report Manager Web-based tool used for report Microsoft Internet Explorer 6.0 with
viewing and management. Service Pack 1 (SP1) or Internet
Explorer 5.5 with SP2, with scripting
enabled.
Reports with scripted features, Scripted features include Microsoft Internet Explorer 6.0 with
rendered in HTML 4.0 documentation maps, bookmarks, SP1, with scripting enabled.
and show/hide. On the report
toolbar, scripted features include
Microsoft Internet Explorer 5.5 with
zoom, search, refresh, export, and
help. SP2, with scripting enabled.

Page 2 of 6
SQL Reporting Services Architecture

Netscape 7.1

Reports with non-scripted features, Non-scripted features consist of Microsoft Internet Explorer 5.01 with
rendered in HTML 3.2 drill-through and drill-down to SP2.
additional pages on a rendered
report.
Netscape 4.78.

Any of the previously noted browsers,

when scripting is disabled.

Report Designer
Report Designer is a tool that you can use to publish reports to a report server. Report Designer is integrated with Microsoft

Visual Studio® .NET 2003. You install Report Designer features into Visual Studio .NET using a setup program. After

installation, you can create reports by creating a new report project.

To create a report using Report Designer, you create a new project in Visual Studio and add a report or set of reports to it. You

can create tabular, matrix, or freeform reports. Tabular reports and matrix reports, also known as crosstab or pivot table

reports, are easily created using Report Wizard. Freeform reports, which can include tables, matrices, and any number of

other elements, are created using the familiar Visual Studio .NET interface.

While developing a report, you have the option of testing it locally, without publishing it to a report server. Report Designer

can use the same processing and rendering extensions that the server uses, ensuring that users see the report as it was

intended when they run it from the server.

You publish, or deploy, a report using the Visual Studio build process. Report Designer deploys the report to a report server

that you select, after which you can manage properties and security using administration tools such as Report Manager.

Most features of Report Definition Language (RDL) are available in Report Designer.

Report Server Command Line Utilities


Reporting Services includes command line utilities that you can use to administer a report. The following utilities are available:

• The rsconfig utility is a connection management utility.

Use this tool to modify the connection between a report server and report server database. The report server uses

encrypted connection information to access a database. Because the data is encrypted, you must use this tool to modify

connection information. For more information about syntax, see rsconfig Utility. To learn more about connection

configuration, see Configuring a Report Server Connection.

Page 3 of 6
SQL Reporting Services Architecture

• The rs utility is a script host that you can use to perform scripted operations.

Use this tool to run Visual Basic .NET scripts that copy data between report server databases, publish reports, create

items in a report server database, and more. For more information about syntax, see rs Utility. To learn more about using

scripts to administer a server, see Scripting Deployment and Administrative Tasks.

• The rskeymgmt utility is an encryption key management tool that you can use to back up symmetric keys or delete

encrypted data used by a report server.

Use this tool to store encryption keys in case you need to recover a database. If the keys cannot be recovered, this tool

provides a way to delete encrypted content that you no longer use. For more information about syntax, see rskeymgmt

Utility. To learn more about key management and storage of sensitive data, see Storing Encrypted Data in a Report

Server Database and Managing Encryption Keys.

• The rsactivate utility is a server activation tool that you can use to activate a report server instance on a Web farm.

Use this tool to activate service when you add a new report server to a Web farm or replace a failed one. Activating a

service creates a symmetric key that the new service uses to encrypt and decrypt data in a report server database.

Report Server
The report server is the main component of Reporting Services. It is a Web service that exposes a set of programmatic

interfaces, which client applications can use to access the report server. Through its subcomponents, the report server handles

report requests; retrieves report properties, formatting information, and data; merges the formatting information with the

data; and renders the final report.

The report server component contains several subcomponents, which are discussed in this section. The following table

describes the topics in this section.

Topic Description
Programmatic Interfaces Describes the programmatic interfaces, which accept
SOAP and HTTP GET requests, retrieve information
from the report server database, and pass the
information to other components.
Report Processor Describes the Report Processor component, which
retrieves the report definition, combines it with data
from the data processing extension, and renders it to
the requested format with a rendering extension.
Data Processing Extensions Describes the data processing extensions that retrieve
data from the report data source.
Rendering Extensions Describes the report rendering extensions that
transform the report layout and data into a device-
specific format.
Report Server Database Describes the report server database, which stores
report definitions, meta data and report history.
Scheduling and Delivery Processor Describes the Scheduling and Delivery Processor
component, which runs and delivers report on a

Page 4 of 6
SQL Reporting Services Architecture
schedule.
Delivery Extensions Describes the delivery extensions that deliver reports
to specific devices or formats.

Report Server Database


The report server database is a SQL Server database that stores Reporting Services data such as report definitions, report

meta data, cached reports, snapshots, and resources. It also stores security settings, encrypted data, scheduling and delivery

data, and extension information.

The report server database can exist on a server or cluster that is separate from the report server, or it can be installed on the

same computer as the report server. For more information about installing and configuring the report server database, see

Installing Reporting Services.

The report server database is accessed through the report server. Report Manager, Report Designer, and the command line

utilities all use programmatic interfaces to communicate with the report server database.

Data Sources Supported by Reporting Services


Reporting Services retrieves report data using data processing extensions. Data processing extensions use ADO.NET managed

providers. Reporting Services provides extensions to retrieve data from the following data sources:

• SQL Server 2000

• SQL Server 7.0

• SQL Server 2000 Analysis Services

• Oracle

• ODBC data sources

• OLE DB data sources

Because Reporting Services is extensible, developers can create extensions that retrieve data from additional data sources.

Using Oracle Databases With Reporting Services Reports

You can build and deploy reports that use data from an Oracle database. Before you deploy the report, you must install Oracle

client tools on the report server that hosts the report. After you install the client tools, you must restart Internet Information

Services (IIS).

Reporting Services Extensibility


Reporting Services is a full-featured reporting platform implemented as a Web service. The client tools and extensions

included with Reporting Services use the same interfaces available to developers for building third-party applications.

Developers can extend Reporting Services in the following ways:

Page 5 of 6
SQL Reporting Services Architecture

• Create applications to manage a report server by using a Simple Access Object Protocol (SOAP) interface.

• Create applications or use Web browsers to manipulate report output through URLs.

• Create applications to configure a report server through Windows Management Instrumentation (WMI) classes.

• Create additional rendering, delivery, security, and data processing extensions by using the Microsoft .NET Framework.

• Create Report Definition Language (RDL) files that can include custom elements.

Page 6 of 6

You might also like