Reporting Services :: SSRS Matrix Aggregate Values And Rounding Error
Jun 11, 2015
I am using SSRS 2014. I'm using a matrix instead of a tablix because it allows me to have dynamic columns. In the example I'm showing, two of the columns use the sum function to get the total counts per practice. The third column contains percentages so I averaged for the total but the value is inaccurate compared to the value I would get if the divided the the two totals that are sums of the counts. Is there a way for me to specify that I want to divide the total counts numerator divided by the total counts denominator?
Here's an example report output with the percentage column averaged (inaccurate):
PCP numerator denominator percentage
John Smith 66 104 63.46
Tom Jones 4 36 11.11
.
.
.
Jane Doe 1 1 100
Total 708 1005 72.3
So the 72.3 value is from Avg(metricvalue)
I would like to do this instead: % total = 708/1005, which equals 70.5 - a significant difference.
The metricvalue column is what is the value for every number above (Because it's a matrix).
I am creating matrix report with grouping on WEEK and Fiscalyearweek,I need to calculate of difference between FY14W01,FY15W01 ande percentage of those..how to calculate in ssrs level.
I got the following code to add a column in a matrix with a variance:
IIF(IsNothing(Previous(Sum(Fields!Amount.Value))) or Fields!year.Value=First(Fields!year.Value,"Category") or Previous(Sum(Fields!Amount.Value))=0,nothing, ( (Fields!Amount.Value) /Previous(sum(Fields!Amount.Value)) ) )
This code works fine, except that the first row of the matrix shows an #error
This happens with each matrix where I use this expression. A warning emerges:
rsruntimeerrorinexpression the value expression for the textrun Textbox43.Paragraphs[0].TextRuns[0]' contains an error.
Attempted to divide by zero.
The strange thing is that the part
Fields!year.Value=First(Fields!year.Value,"Category") should prevent an error and I expect it to show 'nothing'
An screenshot of the table. (each color is a different category. Each row stands for 2013, 2014, 2015)
As you can see, all other 2013 rows show a blank cell, except the first row.
Seems simple. People working in departments with different types of hours (regular, overtime, vacation... thus the grid which pivots hours in rows to the appropriate columns). I want to subtotal by department, but whenever I try to add totals after to that group, I just get a grand total. No subtotals. Why?
I am new to matrixes and I have created a dataset which I would like to populate into an expanding / collapsing matrix.
The purpose of the report is to show a list of pallets and their respective stock adjustments. I have laid the matrix out as follows...
I have spent the entire afternoon playing around with this and searching Google, but as yet, I have been unable to get the matrix to display more than 1 record per pallet. Each of the pallets below have multiple adjustment records, yet the report will only display the first one...
If I assign the dataset to a table, it displays as expected.
I am creating a matrix in which row color changes alternately(1st row white second row blue and so on .) now i am calling this matrix as a sub report in other report and i had applied grouping on that row in which this MATRIX is called the problem i am facing is in first sub report 1st row is coming in white color while in second sub report 1st row is coming as blue color background And so on...
Why so is happening as i want 1st row as white and second row as blue i all sub reports .
I have one Matrix Report developed in BIDS(2008R2). If I export this report into Excel sheet exact structure what i developed in BIDS its coming. But If I exported into CSV I am loosing Structure and Columns showing as Rows.
I developed one dynamic column (matrix) report. while export to excel it 's show same output as SSRS have. but while exporting CSV pivot column not coming as same as Excel and SSRS screen. data is moving to rows.
I have created the matrix report which has dynamic column, it grow columns(18) based on the 'MCU' field in PRD.MI table. I have added the 'MCU'(A,B,C,D,E,F,G,H,...Q) on 'Columns' in matrix table, to create matrix report and I have added 'mcst' on 'Data' in matrix table and I have added the 'msp2' on 'Rows' in matrix table. I have created new column after row and I added USP2DS.Final output is as given below.I need the split the matrix column per page.
I have added the 'MCU' on "Column group and 'msp2' on Row group.
Query: select mi.*, SUBSTR(SM.USP2DS,6,9)AS DESC from (SELECT a.mcu , a.msp2, SUM(a.mcst) AS Cost FROM PRD.MI as A WHERE a.myr=2015 and a.mpr=7 GROUP BY a.MCU, a.msp2 order by a.mcu, a.msp2 ) mi, (SELECT DISTINCT U_SP2, USP2DS FROM UM.SM) SM WHERE A.MSP2=SM.USP2 ORDER BY MCU,msp2
I have tried the below post, but I am not able achieve my output. [URL] ....
I have a dataset with weekly salary of multiple employees of same grade from different dpt. We are not going to show the report based on employ. The report will be showing data based on Employee grade and their department.
I have a situation in SSRS to get the common values between the two columns where the values are sorted comma separated as below.Ex:
ColumnA : abc,cde,efg ColumnB : cde,xyz,abc
the result in
ColumnC : cde,abc
similarly Column A and B will have n number records. I need to right an expression or the Code function to get the required result in ColumnC. I am using SharePoint Lists as Datasource. Cannot write SQL query to achieve this requirement.
I am SSRS user, We have a .net UI from where we want to pass multi select values, but these values are comma separated in the database. how can I write a sql query such that when I select multi values on my UI, the comma separated values are take care of.
I am trying to create a matrix report to work similar to a pivot table, where when a user clicks on the count, the details are displayed. When I add the action to open a sub-report, how do I pass in the parameter values for the group that was selected? meaning if in row group- I have company name, and column group I have job title, when the count gets clicked, i need to pass in the company name for the row that was clicked along with the column group. How can I proceed?
We mark cells in a report using color names like red, pink, and transparent in the fill expression. In the browser it works correctly. When exported to Excel the colors go to the wrong cells. This worked correctly in SSRS 2008.
I have got this matrix and I am trying to calculate the average amount of working days in a month. At the moment, I have divided the total number of jobs by 21 for every month which is a hard coded value. However, I am not sure how to retrieve this value dynamically. Is there any formula that can find out the working days?
The data source is Fetch XML - so all the values are string.I need to sum the values but getting an error:
Warning 1 [rsAggregateOfNonNumericData] The Value expression for the textrun ‘Textbox25.Paragraphs[0].TextRuns[0]’ uses a numeric aggregate function on data that is not numeric. Numeric aggregate functions (Sum, Avg, StDev, Var, StDevP, and VarP) can only aggregate numeric data.I tried converting it to INT but it returns a large number which does not match what I'm expecting.
I'm building a report that has a column in the table called countries of origin, that column can contain data like "USA","China" ( normal countries) but some rows can also contain "USA, China, Australia" ( multiple counties in one row).
I'm trying to build a filter to filter my results :
-I have a data set created with a list of all world countries
-I've Build a Parameter containing a drop down list with all countries
--- My problem is when I want to create the filter in my main data set , I can so it , but when I search for example for "USA" , I don't get the lines where there are multiple countries and "USA" is one of them...
There must be an expression in the filter that will be able to search through all the values in the string and return me my correct results.
I am having SQL query which has inner join table from another Database. The below highlighted query shows its values.
/*Trend and Capacity Report*/ SELECT MEA.DisplayName AS Cloud, MEB.DisplayName AS VM, OS.PropertyValue AS OS, CONVERT(varchar(17),PD.DateTime,113) AS Date, VM3.VirtualCPUCount AS VCPU FROM Perf.vPerfDaily AS PD INNER JOIN vPerformanceRuleInstance AS PRI ON PD.PerformanceRuleInstanceRowId = PRI.PerformanceRuleInstanceRowId INNER JOIN vPerformanceRule AS PR ON PRI.RuleRowId = PR.RuleRowId
[code]....
My request is to calculate total capacity of all available Virtual CPUs, Memory and Storage from 4 separate clouds: 'cloud1','cloud2','cloud3','cloud4'
Whenever I select =Sum(Fields!VCPU.Value) expression in Report Properties and assign it to a variable and assign that variable to a Text Box field I get the value as VCPU * (Number of VMs) which is not correct.
I am looking to get the value of VCPU from all 4 clouds above.
I am using 2 charts in my SSRS Report. Requirement is to load the Right side chart based on the click event from left chart.
I can achieve it using go to report option. But the issue is total page getting refreshed while using this option. I feel bookmark option will be the best. But I don't think I can pass a value to Bookmarks.
I am trying to build a report using SSRS.I need to retrieve a distinct value from my initial query and place this in the header or group row.The detail lines are hidden but may be expanded(shown).I then have another group row in which I require the sum of all distinct values from my previous group row.To explain pictorially I have the following:
-Scroll right to see the pink squares.Note that the total in the pink square is the sum of the individual var3 values distinct so 10 even when var3 =4 in euro currency. -I have tried using sum(var5) but this will give the incorrect value as it sums all detail lines not just the distinct values. -I have tried using another dataset but when referenced the grouping behaviour expected is non existent so where I expect 40 I get 80 i.e. sum disregarding values of var1 and var2 although these are the grouping variables. -I need it to be dynamic so I am unable to use IIF(...).
If I could get var4 or var6 to be the totals I require I could work with that.I have also tried the following custom code:
Dim public unitLimit as Double Public Function Getcpvalue(ByVal limit_amount1 AS Double) AS Double unitLimit = unitLimit+ limit_amount1 return limit_amount1 End Function
I have 2 datasets, dataseta is a list of tickets and their relevant owner and databsetb is a list of owners and a days worked first against them.I have a table with a detail grouping on ticketid and a normal grouping on owner which works well... all straight forward to this point. In this table on the owner grouping level I also have a lookup to datasetb which pulls back the days worked per owner which works fine as well. But what I now need to do is total the days worked over all owners, which sounds simple but doesn't work. This is the expression on the days worked for each owner -
I have a report which is redirecting to a subreport. The main report is having multi value parameter. I need to pass these multi values to sub report. Passing parameters from MDX report to T-sql report. So, I'm using the below exp.
=SPLIT(REPLACE(TRIM(Join(Parameters!Grade.Label,",")),", ",","),",") The value will look like this 01-Manger 02-Senior Mange 21-Associate 25-Associate Trainee
This is working for me in all the cases except one. In all other cases, the parameter's Label and Value field has same data in the sub report. But, in a specific parameter I'm getting Label and Value data are different. I'm getting an alpha numeric string value from MDX report , but I need to pass only the numeric values to the sub report since its value field contains only numeric value. The numeric value is coming at the starting of the string data. So I have used Mid()
I have integrated sharepoint list data to SQL Server reporting services. I am using the below to query sharepoint list data using sql reporting services.
By using this query, I am getting a dataset which includes all the columns of sharepoint list. Among these columns, I wanted to display only 2 columns (i.e Region and Sales type) using chart. I have created a Region parameter but when I click preview, the drop down box is giving me all the repeatative values of region like
RG1,RG1,RG1,RG2,RG2,RG2,RG2,RG3..........
I wanted to display only distinct values of Region parameter so that whenever end user select region from the parameter drop down, it will display the respective value of Sales type column.Also when I select only RG1 parameter, it is giving me a chart including the sales type of all the Regions. (it should display me only the sales type of RG1) How can I link these 2 columns so that they will display the values respectively.
In an existing SSRS 2012 report, I have a requirement for a user to be able to select by multiple school(s) and/or multiple grade(s). This is fine except certain schools like elementary have grade levels of KG to 06, Middle school has grades of 06 to 09 and high school has grades of 10 to 12. Thus for example, if a user has initially selected grades 11 and 12 and then they select an elementary school that has grades KG through 06, the 'grade level' selection would need to change.In other words, I am thinking of initially having the available and default values for the parameter called 'Grade' set to KG through 12. However if a school is selected that only has specific grade levels like elementary school, how can I override the original grade level and only allow the user to select grades that the particular school contains?
A Fact table <<Company Revenue>> 2 Dimension <<Month.Dim>> , <<Company>>
I have 4 company say (A,B,C,D) but i have record for only company A & D that too only for December month .
When I create a SSRS report out of the cube i want a matrix where all the company names to be displayed in the rows & all the months in the columns and company's revenue in data
What my report is displaying :
Company | December ------------------------------------------------------- A | 20000 ------------------------------------------------------- D | 3900 -------------------------------------------------------
what is needed :
Company | January | February | March | ........... | December ----------------------------------------------------------------------------------- A | | | | | 20000 ---------------------------------------------------------------------------------- B | | | | | ---------------------------------------------------------------------------------- C | | | | | ---------------------------------------------------------------------------------- D | | | | | 3900 -----------------------------------------------------------------------------------
I have a requirement to display the total of a Group after subtracting a specific value from the same Group.
Example: Say the below data is grouped on a particular column
Group Values Month
Jan-15 Feb-15 Mar-15
A 10 20 30 B 5 10 25 C 1 2 3 D 5 10 15
Total 11 22 33
Formula is : Sum(A+C+D)- Sum(B)
What is the best way to Group the above scenario from SSRS level and display the result as shown above. I am able to display all the values except the last total row where am displaying the complete total i.e. 21 42 73.
How do I dynamically subtract the values for row B which is one of the group values.
I get May 10th! The only thing that changes is the toString. Why are the two values different? I tried with different expressions and the difference arises when i start using Weekday(Today(), somevalue).
The result of Weekday should be independent from regional settings as I am forcing Sunday to be the first day of the week, right?
I am trying to create a column chart that calculates the percentage of computers in our IT environment that are Actively communicating to our SCCM Server.
I have two datasets:
1. Total_Count_Of_AD_PC DataSet.
2. PC_With_Active_SCCM_Clients dataset.
Basically i wan to calculate the percentage for each Region (i.e. AP for Asia Pacific, EMEA, Americas).
Below is the Total_Count_Of_AD_PC Dataset screenshot.
Below is the PC_With_Active_SCCM_Clients dataset.
Below is the expression that i used that is causing the error.
The Y expression for the chart ‘Chart2’ has a scope parameter that is not valid for an aggregate function. The scope parameter must be set to a string constant that is equal to either the name of a containing group, the name of a containing data region, or the name of a dataset.
I have both positive and negative values in a single column, where I want sum total of positive values & negative values. Is there any Expression for this to sort out.
I am creating a SSRS report using a SSAS cube as it data source. The user would like to select multiple values from a reporting parameter that is then used as a filter on the MDX statement. I am bale to have the report work successfully when only one value is selected but not when multiple values are selected; the report uses only the first value from the reporting parameter when it contains multiple values. How do I filter an MDX query using a SSRS report parameter with multiple values?