In one of the projects I had to create reports (using Reporting Services) that then should be accessible from the application I’ve been developing.
As the first thing I created the reports themselves (RDL files), deployed them using the Report Manager (more often http://localhost/Reports
or http://localhost/Reports$SQLExpress
), and configured so I could access them. However, each time I accessed a report I had to provide the input parameters which were used by the stored procedure in order to deliver appropriate amount of information. I wanted to avoid that by passing the parameters somwhowin the URL.
Google came with two interesting articles: Using SQL reporting services in an asp.net application with some notes on report parameters, and Passing parameters and other options directly through a URL in Reporting Services. I followed the instructions but failed. In fact I got stuck making minor changes to the URL, checking the configuration, googling further…
It was only my friend who spotted that I tried to pass the parameters to the Report Manager using URL similar to http://localhost/Reports/Pages/Report.aspx?ItemPath=XXX&rs:Command=Render&ParamName=ParamValue
. Instead I should use the Report Server, so link looking this way: http://localhost/ReportServer/?XXX&rc:parameters=false&rs:Command=Render&ParamName=ParamValue
.
Note: Please remember there are two services: Report Manager and Report Server and understand the difference between them. This way you won’t loose presous time, as I did