SSRS Grouping multiple tables based on Multi Value parameter - reporting-services

I have a report containing seven tables, each table returning a different set of values for a list of id's selected in a parameter list. I have the tables enclosed in a rectangle so that they print together.
Now I would like to group the results based on the id passed in from the multi-select parameter. So if I have a list of four ids in my parameter list the report would displaying my rectangle of seven tables four times, one for each id.
What would be the best way to do this?
Should I take my rectangle of seven tables and enclose it in another table grouped on the id? Or place it in a list item?
Any suggestions?

You can add grouping on the rectangle on Parameters!<ParameterName>.Value which is an array of values.
Then, per table you need to define this group as the parent and SSRS should then pass the grouping ID to the tables in each rectangle/id grouping.

Use a list control.

Try:
SORT FILENAME BY-EXP multivalueDict BREAK-ON MultivalueDict OtherValue1 OtherValue2 etc...

Related

Repeat Alternating Tables per each available parameter value

I have 2 datasets for two different tables/reports. A third dataset contains available values for my parameter. Both tables use this same parameter. I want both of my tables to be repeated per available value in the parameter. I want the tables to alternate, instead of just having one table repeated x times followed by the next table being repeated the same number of times. Is there a way to do this?SSRS report snippet
I tried putting the tablix in a list and grouping the list on the parameter values. This made the tablix repeat for each parameter value, but I can't add the second table to the list since it has a different dataset. The datasets are so different that it's hard to combine them into one.

Reporting services - different formatting for patrent group

I have a raport in SSRS with several row groups, like:
Is it possible to specify formatting for one of the groups (the main one)? To achieve effect like this (lines of the main group are bold):
Unfortunately, there's no easy way to do this.
The easiest way to do this would be to create a List object (which is just a table with a single cell).
Set the Dataset to the same as the current table.
Set the grouping to Group By the field in Column 1.
Add the borders to the cell.
Drop the current table into the new List.
The list will break up the data by the column 1 group and then the current table will display the data as it does now.
What I will do for this is I will make a child for sub report to handle the grouping where I will pass the parameters that will filter and display all of the data from a group.
then the parent class will be the one to calls it thru list and from there I can change the border style or size of list. in this way, the grouping will have a solid border per group

How to parameterize DataSet with group variable?

I have 'external' table.
Inside each row of this table I need to show several tables associated with different DataSets.
But I have no idea how I can constrain these 'internal' DataSets with parameters of the group.
Is it possible?
Update
The next step may be to show subreport.;) The problem is that when nested DataSets have empty results subreport is not shown... even static content.
Here is a nice post hot to force subreport to appear.
The idea is simple. You need to add fake DataSet to subreport with query like:
select ' ' as Dummy
and use the result in visible textbox like that:
=First(Fields!DUMMY.Value, "DataSetToForceSubreportVisibility")
It works like a charm.
Yes, this can be done with sub-reports.
1) Create a report, which contains all the "internal" tables you want for each row of the "external" table. Populate it with a dataset that has an ID parameter for which member of the outer group this is, so that all the internal tables will only be about a single group member.
2) Create a main report for your external table. This report contains a List control, and you populate it with a dataset that gets the members (IDs) of your outer group.
Inside each cell of the list is a subreport, which is the report you created in 1). You pass to the ID parameter of the subreport the field containing the IDs you selected for the List control.

Is it possible to Rearrange the columns in SSRS reporting services

I have a Matrix report in which the user can select a list of columns related to a particular table using a parameter. I need to rearrange the columns. I'm dealing with dynamic columns so i can't do it in designer mode.
I'm able to move & swap a single column by using two parameters one is to select a particular column we want to move and other parameter is to select a column that my desired column need to place after/before this column. For this I have created a Stored Procedure. It works fine.
Is it possible to rearrange multiple columns before viewing the report?
make the sort order of a the column group a calculated statement using the parameters to determine the sort order

use two different datasets in single report

I have two different-2 datasets with different fileds which are getting populated through two stored procedures with same input parameters.each datsets have different colums and no of columns around 180,my concern is how will i use these two different datsets in single report with two differents fields(two differnt tables).for one dataset i have used report wizard,but not able to figure out for the second dataset.Please suggest for the same..
You can use two different datasets in different reports regions on one Report. For example, If you have two datasets, lets say DS1 showing EmployeeDetail and DS2 showing SalesInfo. You can use them separately in two tables one showing Employees Details and other showing Sales Info. If you plan to merge this data and use it in one table, These are option.
Recommended option : Re-write your query to create single dataset containing possible data you want to show in tabular fashion.
Would work but would be lot slower : Use DS1 in a table in Main Report where each row contains Epmloyee Detail, Wihtin that Row call a Sub-Report passing EmployeeDetail's key which is related to a column in SalesInfo. Create sub-report showing SaledInfo data, call this report in main report passing key value from DS1 to this sub-report.
Specify data set name in third column
Example:
=First(Fields!fieldname.Value,"DataSet1")
Using two different or multiple datasets in a report is not a problem at all, as long as they do not belong to the same data region (charts, tables, etc.)
In addition to Ron's answer, if you are looking to get data from different datasets in one data region, you could also use Lookup or LookupSet in the field expressions.
Additionally, you may also create one dataset and filter out some data from it in data regions. For example, if you have one big dataset of all employees, and you would like to display all employees that joined in the year 2012 in a table, you could filter out the dataset using Filter properties of table.
You can simply add multiple table in your report , and change datasetName from tablix properties for each of your table .
you will also need binding source to fill that dataset .
this.invoiceTableAdapter.Fill(this.ARQutationDataSet.invoice);