Two Dataset without joining them in SSRS - reporting-services

I have two Datasets in my SSRS report and both dataset coming from different database. and there impossible to join them
Example not real Data .....
so what im tring to do is (Dataset1) total number of Visiter divided by (Dataset2) Total number of Cars * 1000 (sectors) row group by every month and Year.
for example (not real) if we have 24 Visitors and 2063 Cars *1000 so we get AVG of 1000 Sectors 11.63
Is there any funcation in SSRS where i solve this problem IN Excel you know i easy but I need to create report in SSRS please any help would safe me. Thanks
enter image description here

The lookup function in SSRS allows you to get fields from a different dataset based on matching criteria.
See here for more information: https://msdn.microsoft.com/en-GB/library/ee210531.aspx

Related

Getting SSRS to aggregate as rows instead of columns

I've constructed a cube using SSAS, and I'm using that cube to fuel an SSRS report. Using Excel, I can generate reports as pivot tables from the SSAS source, and I'm trying to replicate some of that functionality as a report in SSRS instead.
Here's how I have the thing set up in Excel:
As you can see from the pictures, I have several stats that are being displayed per row rather than per column. The results that are displayed per row are aggregated statistics (sum, count, etc...).
How do I accomplish this same thing using SSRS? In Excel, it was simply a question of saying "Move to Row Labels".
You can create a Matrix, set the column group to be by fiscal calendar .
Within the row group you will need to add additional detail rows and place each value on the row.
This should give you the desired results more of less.

Passing multiple values to subreport parameter - SSRS

I have a report that has 4 parameters:
Year - accepts a single value for a year - ex: 2020
Carrier Group - allows the user to select a single carrier grouping
Segment - allows the end user to select one or multiple business segments
Loss Cause - allows the end user to select one or multiple loss causes
And when I execute this report:
The report generates as expected - and I have the SSRS report set up so it creates a new tab in Excel when exported to separate the monthly totals vs the cumulative totals.
But the end users would like to be able to execute this report for multiple years to compare - so I have created a parent or main report - then I created a tablix and added the sub-report to be called - and created a row group based on the Year(s) selected.
My subreport parameters are as follows:
What I am ultimately hoping to accomplish is to pass in a single year plus the carrier group, segments and loss causes that were selected - and run the subreport for each of the years the user may select.
For example, if the user selects 2016, 2017, 2018 - the sub-report would need to be run 3 times to generate the totals for each of those years using the same parameters for carrier group, segment and loss cause.
I'm not sure what is happening but with the Year parameter as it: =Parameters!Year.Value(0) - the report looks like it keeps generating one year over and over:
I also tried using =JOIN(Parameters!Year.Value,",") but that did not seem to help either.
Anyone have experience on how to solve this type of issue? Thanks,
The easiest way to do this is to add a dataset to your main report that returns one row per year.
If you have a dates table or similar in your database then you could do something like
SELECT DISTINCT Year(myDateColumn) as [myYear]
FROM myDatesTable
WHERE Year(myDateColumn) IN (#Year)
If you don't have a date table then (other than suggesting you add one...) you could create one on the fly with something like
SELECT * FROM (
SELECT top 20
ROW_NUMBER() OVER(ORDER BY name) + 2000 as [myYear]
FROM sysobjects) o
WHERE myYear IN (#Year)
(adjust the top 20 and +2000 as required to get a range of years that covers all your potential data)
Now set the dataset property of the tablix in your main report to point to this new dataset.
In your subreport object's parameters, set the value for the Year parameter to the [myYear] field in your dataset by selecting it from the drop down or using =Fields!myYear.Value as the expression.
Now that the tablix is bound to the dataset, it will create one row for each record returned from the "dates" dataset, each row will have a different year which is passed to the subreport, so the subreport is called once for each row/year.

Add row data to total,without showing row values SSRS

I am relatively new to SSRS. This is a Dynamics CRM report. My scenario is that I have a 15 truck drivers. I have created a report that shows their number of trips and the miles driven. I can sum the miles and get the total number of miles for each driver.
What I want is just the driver name and the total number of miles driven.I am not sure how to get that calculation done in SSRS. Any help would be greatly appreciated.
Regards
SR
It will be straight forward if your dataset just returns the data you need - the driver name and the total numbers.
But if your dataset returns the detailed data, not totals, then you can just hide the detail row of the tablix: right click on the detail row header -> Row Visibility... -> select the "Hidden" radio button. With that, I'm assuming your report already has the grouping by Driver and shows the total miles.
Best regards,
~Alexey

SSRS: Value not to be grouped

I have a chart that currently has a count of cases, and then grouped by users, now I am trying to implement a second value which is a round up of all users and gives a global average.
this global average for obvious reasons cant be grouped based on the users in order to give the correct representation.
I am not using VS to output these reports but I using SQL report Builder 2008 R2.
Is there anyway that I can overcome this global avg being grouped by users, can I use a filer to stop this maybe?
The global average would be the number of cases divided by the number of distinct users. You can aggregate over the entire dataset by including the dataset name:
=Sum(Fields!Cases.Value, "MyDataset") / CountDistinct(Fields!User.Value, "MyDataset")

SQL Server Report Builder - Show Count of Sub Groups

I have a SQL Server Reporting Services report that shows customer order data, but it's grouped as follows:
Store
Customer
Customer Order Items
So, each report is a grouping of stores, with a subgroup of customers per store, and then the items per customer. I'm trying to show aggregate sale and other information at each header record of the appropriate group in the report. Most of this is working well, but for each store header record, I want to show a count of the customers. I'm trying to use some variation and\or combination of RowCount, CountDistinct and other aggregate functions, but to no avail.
Can anyone help me determine how I essentially can get a "count" of customer groups to show at the Store level header? TIA!
CountDistinct on Customer should work fine - no need to specify scope if it's in the Store group header row.
I put a simple test together.
Data:
Report in designer:
Most important thing to note is the CountDistinct on Customer in the Store header row; this is just the expression used:
=CountDistinct(Fields!customer.Value)
End result, showing correct values:
Please let me know if I'm missing something.
Edit after comment:
Apologies in advance for how long this is getting.
The previous report did have row groups for Store and Customer, but I've modified this to make it more clear, hopefully. Still based on the same DataSet:
You can see there are three row groups, and each row in the report is actually a group header row belonging to one of those groups.
In the Store group header row I've kept that same CountDistinct expression. I've also added a CountRows() expression to show how many actual rows are available in each of the different groups.
Here you can see for Store1, CountRows is returning 4, i.e. there are four rows that we are aggregating in this scope, which is what we expect looking at the DataSet.
Similarly, when we apply =CountDistinct(Fields!customer.Value) in the Store scope we are considering these same 4 rows, and we see two distinct customers for Store1, which seems correct to me.
For Store2 we are considering 6 rows in total, which have three distinct customers. Again, just by applying =CountDistinct(Fields!customer.Value) we get correct value.
Hopefully this rejigged report helps clear things up. If I'm still not getting your requirements, can you please explain what numbers are wrong in my sample report based on my sample DataSet? That way I can adjust things easily on my side.