Tuesday, September 4, 2012

How to burst complicated reports with multiple parameters without using SDK

A complicated report is built with multiple pages, and each page with different parameters. It is requested to generate different report files (most of times PDF) for different parameters. Usually, these parameters combination are given from business, which can be more than 10 columns with dynamic data such as date. One way to generate such report is to use SDK to dynamically generate one job for each combination of all parameters, and run the generated job and then delivery all report PDFs.  This document is to document a method using burst.

For the sake of explanation, three parameters and three combinations below are used to demonstrate this idea.

Product Line
Order Method Type
File Name
AmericasCamping EquipmentFaxAmericas-Camping Equipment-Fax
AmericasCamping EquipmentAmericas-Camping Equipment

Please download report specification for review in detail.

Implementation detail

Step 1 Create Burst query

AmericasCamping EquipmentFaxAmericas-Camping Equipment-Fax
AmericasCamping EquipmentnoneAmericas-Camping Equipment

The parameters table can be directly retrieved from database, or generated based on some logic. The bottom line is to get all these parameter combinations into a query.

From this parameters query, you can get a real burst query

Use running count as burst key
Burst query result

Step 2 Assign this query to both burst option and page level query

Step 3 Assign master – detail relationship between page level and data container

For data container, such as list, parameters are needed to be defined as optional, and can handle situation when parameters are not given

Step 4 result
Burst reports

Burst file

1 comment:

  1. Hi Charles,
    can you post some idea to burst a crosstab report,many thanks in advance.