MSSQL Server Reporting Services: Managing Reporting Services: Data-driven Subscriptions, and External Data Sources for Subscriber Data - Page 2
June 23, 2004
Data-Driven Subscriptions: Introduction and a Scenario
As we learned in the introduction to standard subscriptions in Managing Reporting Services: Report Execution and Standard Subscriptions, when we establish subscription-based reporting, our designated report server uses information that we provide it to schedule and deliver the report to designated individuals in the organization, through the channels that we also specify. As we are about to learn, Data-Driven Subscriptions are established as "standing orders" to Reporting Services, just like Standard Subscriptions, to deliver reports in one of two ways: a subscription is based upon either an event or a schedule.
The two subscription types share the same general purpose: to provide information to organizational consumer(s) without requiring the targeted consumer(s) to perform any action to obtain an updated report. This "push" capability, in the context of the Data-Driven Subscription, is useful in establishing reporting based upon data, and other events, whereby a designated user can be informed of the occurrence of the event with little additional effort, freeing them to pursue other activities in the meantime. We will focus on specification of scheduling report generation in our practice exercise, but suffice it to say for now that Data-Driven Subscriptions, just like their Standard Subscription counterparts, can provide highly useful, automated delivery of updated information to intended consumers in a reliable manner.
The actual difference in how the two types of subscriptions operate lies largely in the source of the "destination instructions." Standard Subscriptions, whose delivery instructions are a static part of the report definition file, are usually established and maintained by the information consumers for whose benefit they are created. Data-Driven Subscriptions, on the other hand, generate their subscriber lists, along with other delivery options, when they are executed. They are typically created and maintained by Reporting Services administrators and other operatives with familiarity in report creation and operation.
Data-Driven Subscriptions allow us to determine to whom we deliver reports at the runtime of the report. Delivery to a designated list of subscribers, based upon the list itself, allows us a wide range of flexibility, including customization of our information products for specified recipients at report run time. An obvious benefit of having a list-based delivery mechanism is that distribution of the report remains tied to a subscription list that can change in composition on a regular basis. We might, as an example, leverage a Data-Driven Subscription to deliver a weekly general ledger update to members of a corporate accounting group, or to update personnel with approaching milestone employment anniversaries that various election forms are due to the HR department by a given date.
In Managing Reporting Services: Report Execution and Standard Subscriptions, we explored Standard Subscriptions, and performed a practical exercise in setting such a subscription in place to deliver reports, via a file share, and in an MS Excel format. As we shall see, the primary differences between a Standard Subscription and a Data-Driven Subscription lie in the source of the subscription information that is evaluated by the process. Whereas this information is largely fixed for a Standard Subscription within the subscription definition, the Data-Driven Subscription looks to both the subscription definition (for the fixed facets) and a specified data source (for the dynamic aspects) for its operational instructions.
The fixed instruction elements of a Data-Driven Subscription consist of the following:
The query returns a rowset each time that the Data-Driven Subscription is processed. The retrieved data supplies the dynamic components of the subscription, including the:
Let's continue our overview of the Managing phase, and get some hands-on experience with a Data-Driven Subscription. Because this article focuses on management of reports that are already designed (and in keeping with our objective to make articles "free-standing" with regard to readers being able to participate in each without having joined us in previous articles), we will continue to work with the set of report samples that accompany Reporting Services.
The Business Requirement
Before we begin building the Data-Driven Subscription mechanism, which is really quite similar to the steps we took for the Standard Subscription in Managing Reporting Services: Report Execution and Standard Subscriptions, let's examine a hypothetical business need to embed a degree of reality into the picture. Again, we will make the requirement very similar to the requirement in our last article, so as to emphasize likenesses, and distinguish differences, in a manner that makes the concepts memorable.
We will return, for purposes of illustration, to the business requirement in our last lesson, to establish a subscription whereby we will "push" the FoodMart Sales report to a designated group of information consumers. We will assume again that, up until our establishment of the subscription, the report was regularly distributed manually to users, by attaching the respective report file to individual e-mails, and mailing these, once this was accomplished.
While we might certainly take the existing e-mail approach in a more automated scenario within either type of subscription (and, indeed, the documentation on the circuit at this early stage in the life of Reporting Services has focused exclusively upon this approach), we will again state that the information consumers have requested that the report files be "parked" in a shared folder that interested parties can access at will (this saves them from having to refer to an e-mail at a later time, assuming that they are too busy to review the report when it arrives in the in-box, as in the e-mail scenario.) The members of the prospective audience tell us that the report would be most useful, for purposes of analysis, as the specific type of file with which each respective consumer has a fondness. The report, which will be the same as the one we selected for the Standard Subscription, is parameterized, a fact that we will leverage in our exercise, because the intended audience consists of managers who are (again) concerned with how specific product families are faring within the FoodMart chain, and have little interest in members of the other product families. The ability to customize the selection parameter to individual subscriber's needs presents a distinct advantage in using a Reporting Services Data-Driven Subscription.