MSSQL Server Reporting Services: Reporting Services Basics: Create a Reusable Template Report
October 18, 2004
About the Series ...
This is the tenth article of the series MSSQL Server 2000 Reporting Services. The series is designed to introduce MSSQL Server 2000 Reporting Services ("Reporting Services"), with the objective of presenting an overview of its features, together with many tips and techniques for real-world use. This column also serves as a vehicle for sharing my conviction in Reporting Services' role as a new paradigm in enterprise reporting. As I advise clients on a more and more frequent basis these days, this is the future in a big way. I hope you will consider my input valuable, and that you will investigate closely the savings and advanced functionality that will soon be available to anyone with an MSSQL Server 2000 (and beyond) license.
Important: For information concerning the applications to which you will require access to benefit the most from our series, please see our initial Database Journal article, A New Paradigm for Enterprise Reporting.
It is assumed that you have access and the other rights / privileges required to complete the articles within the series. For details on the specifics of the adjustments necessary to quickly allow full freedom to complete the exercises in this and subsequent articles, as well as important assumptions regarding rights and privileges in general, please see earlier articles in our series, as well as the Reporting Services Books Online.
In this article, we will venture away from the functionally specific focuses of recent sessions, and concentrate on a basic consideration that can save us a great deal of time in our work within reporting services. As most of us who have worked with enterprise reporting packages have come to realize, report templates can offer us many advantages in creating reports to meet the needs of information consumers.
When I say "template," I mean a "pattern," or "boilerplate," which we can create and store, and which we can later call upon to accomplish many of the repetitive steps we might encounter in building a report. A template can serve as a "starter report," saving us myriad similar steps in authoring. This increases report author productivity because much or all of the design work is already done when they begin creating a new report. A template, as we shall see, is simply an existing report file whose attributes can be applied to a new report. We can use templates to give any number of reports a consistent look, while sparing ourselves the need to format each one individually. Finally, in addition to more productivity and support for standardized reporting, templates often offer an added bonus to our report authoring team: they can enable many users to create sophisticated reports that might otherwise be beyond their existing skill levels.
While templates can be evolved to any level of completion before saving them, a template best embodies, once again, a pattern upon which we base the creation of new reports. Because the templates attributes become the basis for the report we are creating, we should try to find that ideal point in the creation of the template where it contains many or all of the characteristics that our reports will hold in common, while leaving out those features that we will have to remove from individual reports after we jumpstart their creation. Templates are, in effect, reports without any actual data, or with minimal "dummy data," perhaps, that can be used as placeholders with which we can easily substitute the real data that needs to appear in the new report. Templates are obviously the most useful when report authors frequently need the same type of report, and we can create these "models" to match the various "standard" reports that arise within our organizations as soon as we recognize the recurring nature of these reports.
Templates in Reporting Services can contain many kinds of report objects, examples of which include:
Regardless of the variety of report types with which we work in the business environment as report authors, it is common to encounter scenarios where our reports represent hours of development investment to produce formatting and other features that we wish, going forward, to apply to subsequent reports without reinventing the original. Template reports in Reporting Services are simply existing .rdl files that we can use, as we have said, to "kick start" new reports - and often shortcut creation cycles dramatically. It is certainly not hard to imagine how creating these surrogate "boilerplates" can help us to grind out large volumes of reports quickly, while retaining the appearance and characteristics to which the organization has become accustomed, or wishes to present as a corporate standard to the targeted audiences.
The process is straightforward, and perhaps intuitive to many of us (depending upon previous reporting applications with which we have had experience), but the step-by-step procedure is not detailed in a straightforward manner in the online help that accompanies Reporting Services. In this article, we will explore the creation of a basic template which we will then enable for use at any point going forward in the report authoring process. In this session, we will: