Reporting Services Scenarios

Reporting Services is an enterprise reporting solution that meets a wide range of implementation scenarios. You can use the tools and applications included in Reporting Services to create, manage, and distribute reports. Out-of-the-box tools and applications are available for expert report designers as well as information workers who need an easy way to create their own reports and explore business data. If you are developer, you can integrate Reporting Services functionality within a custom application, or extend it to support the type of functionality you require.

The tools and applications in Reporting Services provide a full spectrum of features to support enterprise reporting requirements. Reporting Services provides out-of-the-box support for reporting against a number of commonly used data source types, and reports can be rendered and distributed in a variety of popular formats, such as Microsoft Office Word and Excel or Adobe PDF. Although report definitions can be revised programmatically, no programming experience is necessary to use Reporting Services tools and applications.

Report server administrators and content managers can use SQL Server Management Studio, Report Manager, and the Reporting Services Configuration tool to deploy and manage report server content, and they can use Model Designer to create report models of business data for use as report data sources.

Report authors can use Report Designer or Report Builder to create reports that visualize business data in traditional and interactive formats.

Business users can use Report Manager, SharePoint Web Parts, or a Web browser to view reports on demand, or subscribe to reports that are delivered through e-mail.

Information workers need an easy-to-use tool to access and report on business data on an ad hoc basis. Reporting Services includes two versions of Report Builder (Report Builder 1.0 and Report Builder 3.0) and Model Designer, which simplify the process of creating ad hoc report s by providing report templates and pre-generated models of business data. Report models are stored and secured on a report server as data sources that can be used by all the Reporting Services authoring tools. Reports authored in Report Builder 1.0 are always based on report models and provide more intuitive use of models and the easier way to create an ad hoc report. Report Builder 3.0 can use models, but can also directly access relational and multi-dimensional data sources. Reports created in Report Builder 1.0 and Report Builder 3.0 can also be saved to a report server, where they can be managed and distributed like any other Reporting Services report.

Report Builder 1.0 reports also provide clickthrough functionality, which enables users to click data in the report and see related data in the report model on-the-fly. You can attach customized reports to the report model that pops up when the data field is clicked. For more information about the Report Builder or Model Designer used in this scenario, see Reporting Services Components and Tools.

Reporting Services supports a variety of scenarios for developers who want to add reporting features to corporate applications or third-party commercial software.

Application Integration

Developers can use Reporting Services to include reporting features in their applications. For some applications, the addition of reports completes a feature set by providing a way to present data that the application tracks, creates, or monitors. Use Report Designer to create reports based on either a data source provided in your application or one that is publicly available. Use the APIs to define access and add support for any built-in report server features. For more information, see the Reporting Services Developer's Guide.

Alternatively, if your application does not require all of the features provided in a report server, the ReportViewer controls can be included in Microsoft Visual Studio 2005 or later. In contrast with Reporting Services, the ReportViewer controls are distributable with an application.

Visual Studio provides Reporting Services functionality through a ReportViewer control that can be embedded in other applications and through a version of the Report Designer and Report Wizard that is included with Visual Studio. The control embeds report processing and viewing capabilities directly into your application. For more information about the Visual Studio Report Designer and ReportViewer controls, see Reporting Services and ReportViewer Controls in Visual Studio 2010.

Redistribution Through SQL Server Express with Advanced Services

You can include SQL Server Express in custom applications to provide an internal database engine to store and manage application data. If you want to redistribute reporting functionality in a custom application, SQL Server Express with Advanced Services includes a subset of Reporting Services features that you can use or distribute with your application. SQL Server Express is a free Web download that can be used with a separate Web download called SQL Server Express Toolkit. The SQL Server Express Toolkit provides a report authoring tool. You can use SQL Server Express with the ReportViewer controls. There are some limitations with regard to the report server SOAP endpoints. For more information, see Reporting Services in SQL Server Express with Advanced Services.

Hosting Reports in Custom Dashboards and SharePoint Sites

Because reports can accommodate and present data from a variety of sources, many organizations use the interactive reporting features of Reporting Services to distribute data in tabular, chart, and gauge formats via portal applications. Reports can be hosted in a portal page or created so that they mimic a dashboard-style Web application by embedding multiple reports, charts, gauges, and data-driven images into a single free-form report layout. Whenever tabular or graphic data needs to be incorporated into a line-of-business application, consider adding a Reporting Services report instead. For more information, see Nesting Data Regions (Report Builder 3.0 and SSRS).

Building Custom Report Design and Report Management Tools

The tools and applications included with Reporting Services are based on programmatic interfaces that are available to all users. This means that you can extend or replace the applications and tools included in Reporting Services with a custom tool set. For example, if you want an alternative to the Business Intelligence Development Studio authoring environment used for Report Designer, you can develop a custom report authoring tool to replace it. To build a custom Web portal or report management tool, review the API to learn about the report server management functions that you must support. Reporting Services includes a Windows Management Instrumentation (WMI) provider that you can use to develop Windows-based tools used for server administration. For more information, see the Reporting Services Developer's Guide.

Extending Reporting Services Functionality

Reporting Services is designed for extensibility. You can create custom extensions to support additional kinds of data sources, delivery approaches, security models, and report items. When creating custom extensions, the degree of difficulty can vary considerably depending on the kind of extension you are creating and the functionality you need it to support. Data processing extensions are typically the most straightforward to create, while rendering extensions can be very difficult if you are supporting the entire report schema. For more information about extending Reporting Services functionality, see Reporting Services Extensions and Report Definition Language Reference.