Introducing Reporting Services Programming
Reporting Services provides a full-featured set of APIs that you can use to integrate Reporting Services with custom business applications and extend its functionality. The following sections summarize the programmable aspects of Reporting Services.
Full-Featured Web Service
The Reporting Services Web service provides a single entry point to the full functionality of the report server. The Web service uses Simple Object Access Protocol (SOAP) over HTTP and is designed to act as a communications interface between client programs and the report server. The Web service and its methods expose the functionality of the report server and allow you to create custom tools for any part of the report lifecycle, from management to execution. For more information about developing applications using the Reporting Services Web service, see Reporting Services Web Service.
Reporting Services supports a rich set of URL-based requests that you can use as a quick and easy access point for report navigation and viewing. You can use this technology in conjunction with the Reporting Services Web service to integrate a complete reporting solution into your custom business applications. URL access is particularly useful when integrating reports as part of a Web portal or when viewing reports from a Web browser. For more information about accessing reports using URL access, see URL Access.
Comprehensive WMI Provider
The Reporting Services WMI provider is built on standard Windows Management Instrumentation (WMI) technology for accessing control and management information in an enterprise environment. The WMI provider for Reporting Services serves as an instance provider, mapping the Report Server XML configuration elements to a series of classes, which include methods that you can call to add, remove, or modify report server configuration information. The Reporting Services WMI provider is an excellent tool with which to build customized report server management applications. For more information about using the WMI provider, see Using the Reporting Services WMI Provider.
The modular architecture of Reporting Services is designed for extensibility. A managed code API is available so that you can easily develop, install, and manage extensions consumed by many Reporting Services components. You can create assemblies using the Microsoft .NET Framework and add new Reporting Services rendering, security, delivery, and data processing functionality to meet your evolving business needs. For more information about creating and implementing Reporting Services extensions, see Extending Reporting Services.
Report Definition Language Programming
Report Definition Language (RDL) is a set of instructions that describe layout and query information for a report. RDL is composed of Extensible Markup Language (XML) elements that conform to an XML grammar created for Reporting Services. RDL describes the XML elements, which encompass all possible variations that a report can assume. You can add your own custom functions for controlling report item values, styles, and formatting by accessing code assemblies from within report definition files. Moreover, RDL can be generated programmatically. You can build third-party tools and applications that generate RDL in much the same way that Report Designer generates RDL. For more information about using custom assemblies with reports, see Using Custom Assemblies with Reports. For more information about generating RDL with custom applications, see Generating Report Definition Language Programmatically.