Report Builder / BIDS - Running specific datasets only via parameter - reporting-services

We have a lot of reports delivered via SSRS.
We are now looking to consolidate these reports into 'packs' so that multiple reports will actually run in one .rdl.
We are using a separate dataset for each report and are looking to use a parameter to select which reports are run (i.e. which datasets to run)
Does anyone have any guidance on this, i would like to avoid using sub reports if possible.

Related

How to Setup Default SSRS Report Variables

I have many reports which use a set of the same report variables:
Is there any possibility not to insert them each time manually when creating a new report? Or may be there is a possibility to share these variables between reports as , for instance, DataSources?
Can be used for this purpose assemblies?
Based on your question it's seems you're looking for a subreport. Sub Report is a tool available in the toolbox in SSRS. It allows you to create a report that can in included in all your other reports without have to rebuild the structure.
Once you've created your report in the sub report properties just specify the report and include the parameters used for the report (if any) see below:
If that's not what you looking for, then maybe it's shared data sets you're looking for.
Let me know if it's something completely different and I may be able to provide alternative solutions.
Thanks
Gav

Can I use an existing dataset in SSRS?

Related to a
question I've asked earlier regarding SSRS, could anyone please tell me - Is it possible to reuse an existing dataset in SSRS?
I know we can have shared datasets and we can convert a dataset to a shared one too.
Currently we are using Crystal Reports. We are trying to migrate to SSRS. So we were trying to reuse the existing dataset which we've used to create Crystal Reports. There is no option I could see to convert this dataset to a shared dataset so that I can reuse it. I could see the option to convert a new dataset to a shared dataset but not an old one. Or else what are the other options?
We're using VisualStudio 2015, SSDT for VisualStudio 2015, SQL Server 2008 R2.
Hope someone could help me.
SSRS can't use a Crystal Reports Dataset. But you can take the same query you used from Crystal Reports and paste it into a new Dataset in SSRS.
SSRS datasets are specific to SSRS reports, you can't migrate dataset from any other reporting service to SSRS. In your case, you can create a new dataset similar to crystal report by copying your query in new SSRS dataset and by refreshing the parameters/fields values in report being used with that dataset.
In case dataset is to be used by multiple reports you can use shared dataset.

Is it possible to run all the reports in a given folder from report server?

I have a folder with around 15 reports in it, these are Report Server reports. To run each report individually will take a while, so I want them to run together. So, what I want to be able to do is somehow run all the reports in this folder, is this possible?
This is somewhat of an ambiguous question. Let me explain. What are you asking specifically?
Q: Can you run multiple reports at the same time?
A: Yes, and there are several ways to accomplish this.
1. You can use SQL agents
2. Use batch files with task scheduler
3. Use an SSIS package and use an agent to run them at specific times...etc...
Hopefully one of the reports does not depend on another and another thing that you have to take in to consideration is how hard you will be hitting the SSRS or SQL server. Running them all at one time may take longer than one at a time. depending on the bandwidth of the SQL Server and what tables are going to be locked up during each of these processes.
You might want to give a little more detail in your question...
I would recommend an SSIS package, especially as it also one of the options presented by #Michael that can email the Excel workbook too which you mentioned in an earlier comment.
The following resource covers quite well the execution and export of an SSRS report using SSIS, including code you will need as a starting point: Executing an SSRS Report from an SSIS Package.
You could save some time in coding the solution by using the following custom Task that can be integrated into SSIS: SSIS ReportGenerator Task.
There is one problem in your requirements though which is merging reports into one Excel workbook where I assume you want separate sheets for each report within the same workbook?
Reporting Services can use multiple worksheets (to divide a report up into pages a.k.a pagination) but only for a single report; it can't merge reports into one Excel file. This can be accomplished with custom code however. There's a somewhat basic example here: Merging workbooks into a master workbook with separate sheet for each file.
One way to run all the reports at once is to add subscription to all of them and set same subscription start time in all of the reports. what will happen is once the start time arrived all the reports will run simultaneously and will generate excel/pdf (any format specified) file at shared location.

SSRS - How to see query inside Shared datasets

I have a SSRS report deployed ina a server. I have to see how the report is collecting data. The datasets and datasources are shared in this case. How do i have to check the query in the shared datasets?
I'm able to locate the shared data source and dataset location in report server but have no options to see what is inside that. Please help
There are two ways i can think of achieving this, First is to Edit in report builder from the drop down, the second is to download and then add it to a projects and open it up there.

SSRS generate one pdf per record automatically

I've built a report which displays data from a db. This works fine, rendering the report correctly.
My query returns ~40,000 records. I would like to automatically generate a pdf file for each record, named using one of the fields returned by the query.
How do I automate this? I have Report Builder 3, and Visual Studio.
Thanks.
I'd write a report that takes a parameter and generates the report for one record. Deploy to your Reporting Services server.
Then I'd write a quick program that loops through your data and passes each unique record value to the report as a parameter and saves it as a PDF with a unique name. It's quite easy to run reports programmatically and Microsoft have some code to get you started.
If you have Enterprise SKU of SQL Server, look at data driven subscriptions. Another option could be creating report with one record per page, and then splitting resulting PDF into individual PDFs using some free tools.