Aggregate Function In Reporting Services

Oct 7, 2006

I have the problem of aggregating semi-additive measures correct in higher levels in a matrix control of reporting services. I use the "Microsoft SQL Server Analysis Services" data provider. I have a calculated measure saved in the AS2005 cube which looks like:

[Measure].[Net Sales (kg)] = iif( [Measures].[Sales Volume KG] = 0, 0, [Measures].[Net Sales (RLG)] / [Measures].[Sales Volume KG] )

In the matrix, I have a 4 level Product Dimension on the rows (4 groups matrix1_level1 ..... matrix1_level4) and the visibility of the groups is toggled by each upper level, so I can drill in the product dimension. I place this measure in the data part of the matrix with (sum(Fields!Net_Sales__kg_.Value)). On the leave level all values ar correct. But on each other level, I see the sum of the sublevels.

After a lot of pain researching, I found that I have to use the "aggregate" function instead of the "sum" function, because aggregate uses the aggregating which comes from the data provider and the "Microsoft SQL Server Analysis Services" data provider is able to do that. Thats all of documentation I found. I have played around with this function, but always when I use it, I get no values on all levels. I tried the "scope" parameter of the aggregat function, nothing changed.

I tried aggreagate(Fields!Net_Sales__kg_.Value, "matrix1_level1"), aggreagate(Fields!Net_Sales__kg_.Value, "SalesCube") (SalesCub is the name of my Dataset in Reporting Services I use), aggreagate(Fields!Net_Sales__kg_.Value, "matrix1") and last but not least aggregate(Fields!Net_Sales__kg_.Value), all is the same, no values.

It seems to me, that the aggragate function returns "Nothing", because than, according to the Online Help, no values will be shown. But according to some blogs and forum entries, the "Microsoft SQL Server Analysis Services (AdomdClient)" Data provider should deal with aggregate. Have I do some special entries in the "Advanced..." Settings of the data provider??

Can someone tell me, what I'm doing wrong, and did someone know a good documentation (with examples) for the aggregate function on the internet. The Help-file doc is very, very poor!!!

Thanks
Hans

View 4 Replies


ADVERTISEMENT

Reporting Services :: Aggregate Function On Large Value Type

Apr 20, 2015

We are constrained to use a model that stores records in a main table and various attributes of the record in a second table. Something like this: main record table CAR, attribute table CAR_DETAILS with CAR_DETAILS have key value pairs like "color" "blue" and "doors" "4".

For reports we need to flatten the one to many nature of this to get CAR and color and doors by using an aggregate function like: 

car_id, max(car_detail.value) filtered on car_detail.key = "color", max(car_detail.value) filtered on car_detail.key = "doors". 

This works on other tables but the car_detail table (shall we say) appears to store its values as blobs. In any case when we attempt to aggregate we get "The query uses an aggregate function on a large value type expression. Large value type expressions can not be aggregated."

Since we can't change the model, we would need to use another function to change this to a smaller string (or date, these are actually mostly date), but none of the very limited set of functions available seems to work to make this aggregation possible (and there is no "first" or anything else similar). 

The list of functions available in Report Model Queries can be found at [URL] .....

View 2 Replies View Related

Reporting Services :: Error - Y Expression For Chart Has Scope Parameter Not Valid For Aggregate Function

May 6, 2015

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.

=CountDistinct(IIf(Fields!Region.Value="AP", "PC_With_Active_SCCM_Clients"),(Fields!Name.Value, "PC_With_Active_SCCM_Clients"),Nothing)/CountDistinct(IIf(Fields!Region.Value="AP", "Total_Count_Of_AD_PC"),(Fields!name.Value,
"Total_Count_Of_AD_PC"),Nothing)

Below is the error message....

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.

View 6 Replies View Related

SP2 Change To Aggregate Function With Analysis Services Datasource

Mar 29, 2007

There's a change in SP2 that I'm very happy about, but it took me by surprise since I haven't seen it documented or discussed:

http://www.artisconsulting.com/Blogs/tabid/94/EntryID/1/Default.aspx



Can somebody on the SSRS product team double check me that I've written that up right? That seems like a pretty important change and I can't see it mentioned in BOL anywhere.

View 9 Replies View Related

Reporting Services :: Aggregate Functions Cannot Be Used In Group Expressions

Apr 21, 2015

I have report showing sales by Vendor. I need to list all the vendors with Monthly Total>5000 and combine the rest as "OTHER VENDORS"

Vendor is a Group in my report, so I tried to put an expression as a Group on:

=IIF(Sum(Fields!Mth_1_Sales.Value)>5000,Fields!Vendor_No.Value,"OTHER VENDORS")

I've got an error: "aggregate functions cannot be used in group expressions"

How do I get Vendors with Sales < 5000 into  "OTHER VENDORS" ?

View 4 Replies View Related

Cannot Perform An Aggregate Function On An Expression Containing An Aggregate Or A Subquery.

Oct 19, 2007

Can any1 tell me why i am getting an error


SELECT DISTINCT

--p.voucher,

--p.amount,

p.siteID,

b.siteID,

SUM((round(b.total,2,2)) - SUM(round(p.amount,2,2))) AS OutStandingBalance,

SUM((round(b.total,2,2)) - SUM(round(p.amount,2,2))) AS CashCheque,

SUM((round(b.total,2,2)) - SUM(round(p.amount,2,2))) AS Vouchers

FROM

BillingTotal b,

Payment p

--WHERE

-- s.sitename=@cmb1

--AND p.siteid = s.siteid

-- p.voucher = 0

-- p.voucher = 1

GROUP BY p.siteID,b.siteID



Msg 130, Level 15, State 1, Line 1

Cannot perform an aggregate function on an expression containing an aggregate or a subquery.

View 8 Replies View Related

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).

View 2 Replies View Related

Reporting Services :: Value Expression For Text Box Specifies A Scope That Is Not Valid For Nested Aggregate

Apr 22, 2015

I'm trying to sum a column in a report. in Most columns I can just wrap the row level expression with "Sum()" and it works. However, I have run into a few that give the following error. The Value expression for the text box ‘Textbox241’ specifies a scope that is not valid for a nested aggregate.  The scope must be the same name of the scope specified by the outer aggregate or the name of a group or data region that is contained in the scope specified by the outer aggregate.Here is my row level expression that works.

=Code.Divide(sum(Fields!WeeklyUnits.Value),sum(Fields!EstUnits.Value))
*
(Code.Divide(sum(Fields!EstHours.Value),sum(Fields!EstHours.Value,"Job")))

Here is my attempt to Sum the row level for the footer area.

=Sum(Code.Divide(sum(Fields!WeeklyUnits.Value),sum(Fields!EstUnits.Value))
*
(Code.Divide(sum(Fields!EstHours.Value),sum(Fields!EstHours.Value,"Job"))))

View 9 Replies View Related

Ranking Function Not Available In Reporting Services.

Aug 2, 2007

I have the problem.
I have many Cognos Reports to be converted in Reporting Services.
Out of which there are several Ranking Reports.
Cognos has inbuilt Rank Function while SSRS does not have.
I dont want to do grouping on Database level, rather trying to find a solution in RS.
But unfortunately I couldnt find any solution.
I sorted the group according to requirement, now only thing left is showing the rank number and limiting top 60 rows only.
I tried filters to show TopN, but always gives and error and also tried custom code to show the row number for that group but didn't work.

Anyone has any idea how to overcome this limitation of Reporting Services.
One more interesting is when I try to create a field in dataset having IIF and / within.. RS terminates, all unsaved work gone.
Sometimes I think Microsoft cannot have a product which is 100% perfact and working.

View 3 Replies View Related

Reporting Services :: Report Builder Function

Nov 13, 2015

I have got a sql query and converting a Crystal report to Sql report but struggling on few places.When I created the report I need to have a column where I am struggling to figure out how to add this to the column

"if {Clocked_In} = "Y" then
   "Yes"
else
    if {This} then "Holiday"
        else if {Sick} then "Sick"
            else if {Absent} then "Absent"
                else "No"

 "In Crystal four columns make into one but I am not sure how can I do it in SQL report builder. 

View 7 Replies View Related

Reporting Services :: How To Use IIF Statement And Time Function Together SSRS

Oct 22, 2015

I am using the following function to set the time format, however I now need to to add an IF statement into this equation.This is the current expression I am using:

=Floor(Fields!ACD_Calls.Value / 3600) &":"& Format(DateAdd("s", Fields!ACD_Calls.Value, "00:00"), "mm:ss")

Now I need to use the following expression with this:

=IIF(Parameters!ReportType.Value="Average", Sum(Fields!ACD_Calls.Value)/CountRows(), Sum(Fields!ACD_Calls.Value))

How do I join the two together?

View 4 Replies View Related

Reporting Services :: Split Function Resulting In Error

Oct 7, 2015

I have a report that is using the following expression for one of the fields:

=Split(Fields!FromAccount.Value, " ")(1)

The format of the number is xxxxx-xxx xxxxxxxxxxxx

So the function is to grab the second section of numbers after the space. The query for this report can bring back 1 to many results which equals one to many pages.

I have an issue where the query returns three results. The first page will display the correct number, the second page displays #Error and the third displays the number.

When I run the query from Management Studio I see the numbers are as follows:

xxxxx-xxx  xxxxxxxxxxxx
xxxxx-xxx xxxxxxxxxxxx
xxxxx-xxx  xxxxxxxxxxxx

Note the first and and last lines have extra spaces which I thought would be the cause of the problem though I would've expected the #Error to appear on the first and third page rather than the second one.

When I remove the extra space for the first and third number all three pages display their values correctly.

However, there are many, many numbers in the table that have one to two spaces. These numbers are from a spreadsheet that is imported biweekly. So it was either I fix the spreadsheet before every import or I come up with a new expression to check for one or two spaces. This is what I came up with:

=IIF (Fields!FromAccount.Value.Contains("  "), Split(Fields!FromAccount.Value, "  ")(1),Split(Fields!FromAccount.Value, " ")(1))

Now, the first page displays the number correctly while the second and third page displays with the #Error. Basically I want to say if the value contains two spaces then split at the two spaces otherwise split at the one space.

View 3 Replies View Related

Reporting Services :: How To Call JavaScript Function In SSRS

Oct 8, 2015

how to call javascript function in SSRS Reports?

View 3 Replies View Related

Reporting Services :: How To Call Table Value Function In SSRS

Sep 23, 2015

How to call a table valued functions from SSRS reports ? 

Is there a way to call by selecting Dataset properties> Query >Stored Procedure radio button, If not then why our object type function is visible under this list.

MS SQL Server 2008 R2

View 5 Replies View Related

Reporting Services :: MAX Function Query - Display Most Recent Information

May 27, 2015

I have a query where I am trying to display the most recent information about travelling method of customers using "t.collection_date". I am struggling to get MAX function working in the query.

SELECT  P.id, P.forename, P.surname, P.dob, c.postcode, l.code_des, MAX(t.collection_date)
FROM    People p,
                MOT_HIST t,
               lk_mode_of_travel l,
                corresp_address c

WHERE   p.ID = t.id (+)
AND       t.mode_of_travel = l.int_code (+)
AND       p.id = c.entity_id (+)

View 6 Replies View Related

Reporting Services :: Wrong Total Values Are Coming With SUM Function

Sep 7, 2015

Create report with SharePoint list. Columns are displaying on the report I used out of the group SUM function and it is group by report. one group total is showing correct total and other groups are showing wrong total and showing too much big value even there is whole column is empty.where value is not in column I am using "-" with IIF function. these columns are calculating by using date difference function between two date columns. these values coming with minus value . so ABS function is also using.

Columns calculation expression:

=IIF(ISNOTHING(Fields!DateCAPackage.Value)
OR (ISNOTHING(Fields!Date_CA_Application.Value)) ,
"-" , CINT(Abs(DateDiff("d",Fields!Date_CA_Application.Value,Fields!DateCAPackage.Value))))

Total calculation expression:

=Sum(ABS(DateDiff(
"d",Fields!Date_CA_Application.Value,Fields!DateCAPackage.Value)))

View 5 Replies View Related

Reporting Services :: Using Join Function For Fields In SSRS 2008

Jun 30, 2009

we need the list suppliers in a text box,if it were a parameter, we can do it by =join(parameters!Supplier_ID.Value,",")but if the Supplier Id is a field , join (Fields!Supplier_ID.Value,",") doesnt work!how to achieve this.

View 9 Replies View Related

Microsoft SQL Reporting Services - Which Function To Use To Evaluete Null Values?

Apr 14, 2008

View 2 Replies View Related

Reporting Services :: SSRS Multi-Value Parameter Feed To Table Value Function

Jul 24, 2015

I have an SSRS report with several variables, some of which are multi-valued.  The main query that feeds the report uses some table value functions.  For example, the query looks something like this:

select tv1.a, tv1.b, tv2.x, tv2.y, tbl.m, tbl.n
from tableValueFunction1(@MultiValueParam) as tv1
inner join tableValueFunction2(@MultiValueParam) as tv2 on tv1.xxx = tv2.xxx
inner join regularTable as tbl on tv1.xxx = tbl.xxx

where tbl.abc in (@MultiValueParam).When I try to run this, I get an error saying that I'm feeding the wrong number of parameters into the table value functions.  I've fed multi-valued parameters to stored procedures before and used a splitter function to split out the comma separated values, so I was planning to do the same thing in this scenario.  However, this is different.  When I look at the query in SQL Profiler, it shows discrete values for the multi value parameter.  For example, the same query above looks like this when viewed through the profiler (using 1,2,3 as my multi-value selection):

select tv1.a, tv1.b, tv2.x, tv3.y, tbl.m, tbl.n
from tableValueFunction1(1,2,3) as tv1
inner join tableValueFunction2(1,2,3) as tv2 on tv1.xxx = tv2.xxx
inner join regularTable as tbl on tv1.xxx = tbl.xxx
where tbl.abc in (1,2,3)

In other words, SSRS isn't converting the multi-value parameter to a comma separated string, like it normally does.

View 2 Replies View Related

Reporting Services :: SSRS Datetimepicker And Textboxes Values Different When Using Weekday Function?

May 7, 2015

In my SSRS report i have a date parameter and i want to set to it a default value with a complicated logic. I arrived at this strange behaviour:

Today is May 6th, wednesday. If i use the following expression:

DateAdd("d",Weekday(Today(),DayOfWeek.Sunday),Today())

for the default time picker I get May 9th. If I use exactly the same expression in a textbox in the same report

DateAdd("d",Weekday(Today(),DayOfWeek.Sunday),Today()).ToLongDateString()

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?

View 2 Replies View Related

Reporting Services :: Procedure Or Function Create Session Expects Parameter Which Was Not Supplied

Jun 4, 2015

When i open any reports getting the below error message.An error occurred within the report server database. This may be due to a connection failure, timeout or low disk condition within the database.

(rsReportServerDatabaseError)Procedure or function 'CreateSession' expects parameter '@SiteZone', which was not supplied.  

View 7 Replies View Related

Reporting Services :: SSRS Errors - Procedure Or Function Expects Parameter Which Was Not Supplied

Nov 23, 2015

I have a report that uses a stored procedure as a dataset.The stored procedure accepts four parameters, which I have defined in the report. works fine in query builder and SSMS.

When I run the report I get an error stating a parameter is missing. I tried deleting parameters and recreating not luck.

View 4 Replies View Related

Aggregate Function

Feb 21, 2008

Does anyone know how to make a query and use an aggregate function?   This is my current code...any help would be great. 
"SELECT tblTopic.Topic_ID, tblTopic.Subject, MAX(tblThread.Message_date) AS MessageDate, tblThread.Message FROM (tblThread INNER JOIN tblTopic ON tblThread.Topic_ID = tblTopic.Topic_ID) WHERE (tblThread.Message_Date LIKE '%' + @fldGenus + '%' GROUP BY tblTopic.Topic_ID, tblTopic.Subject, tblThread.Message">
Also, How can i limit the query to only bringing up 5 records?
 I'm trying to get a datagrid to show the 5 most recent forum posts for a particular category. 
Thanks.

View 2 Replies View Related

Last Aggregate Function

Mar 9, 2007

Hello, I need to use last() aggregate function in MS SQL Server 2005 but it is not built in.How to replace this functionality?Thanks.

View 4 Replies View Related

Aggregate Function

Apr 3, 2007

I have three tables, tblschedule, tblresource and tblemployeename.
in tblschedule table there are scheduleID, resourceID and employeeID. In tblResource there are ResourceID and ResourceName. In tblemployeename there are EmployeeID, EmployeeFName and EmployeeLame. I want to have a report that show how many times the resource has been reserved by employee. i would like to have a report. Look like the following:

ResourceName EmployeeFName EmployeeLName (Or use EmployeeName) Number of record.

How to write a query? I use asp.net as front end.

Thank for your help.

View 1 Replies View Related

Aggregate Function MAX

Mar 4, 2004

Hi

I have a query where I need to use an aggregate function MAX in where clause, I know that MAX cannot be used in a Where clause because it is an aggregate function. Can anyone help me out in writing this query?


SELECT * FROM ACCOUNT_REVIEW AR INNER JOIN
QUESTION_RESPONSE ON
AR.Review_ID = QUESTION_RESPONSE.Review_ID
WHERE (MAX(AR.Review_Date) IS NULL)


I need it asap. Thanks in advance,


K

View 6 Replies View Related

Single Value From An Aggregate Function

Mar 19, 2006

Hey everyone, I'm looking for a way to insert a count of a set of records into a table and then read that table and produce an XML file from that dataset.  The problem that I'm coming across is that when you do this type of query you have to specify one of the values from the table and then get a count for the number of records of that particular range of values.
The table that I am trying to get the data from will look something like this:
ItemID   ModuleID   Description ......1              2869             blah blah blah2              2869             blah blah blah3              2869             blah blah blah4              2690             bit bit bit5              2690             bit bit bit6              2690             bit bit bit
So I count the 2869's and 2690's and place the ModuleID and the count of the ItemID's in another table.
Then I need to extract the data from the table and put it into an XML file that is readable by the ReadXML method in ASP.NET.
So far I've got the SPROC to do only one record at a time but I would like one that does the whole table rather than one at a time using a parameter.

View 5 Replies View Related

Aggregate Function Update

Mar 8, 2004

I am trying to write an update statement based on an aggregate and it will not let me. Please find below the SQL.

update abtimesummary
set hours = sum(a.hours)
from abtimestore a
join abtimesummary b
on (cast(a.weekno as varchar(10)))+'-'+(cast(a.empno as varchar(10))) = b.summaryid

and this is the error message:

Server: Msg 157, Level 15, State 1, Line 2
An aggregate may not appear in the set list of an UPDATE statement.

Can someone tell me how to get round this please?

Many thanks

View 2 Replies View Related

Use Of Subqueries In An Aggregate Function

Jun 15, 2004

hi there,
I have a query that works on sybase and want to make it also works on SQL Server.
The problem is that in this query I 'm using a subquery in an aggregate function.
It seems that SQL Server unlike Sybase doesn't support the use of subquery in aggregate function.
How can I overcome this problem.

Thanks,
Fady

View 3 Replies View Related

Aggregate Function On SubQuery

Jan 20, 2006

I am working on a view in SQL Server 2005.
I am trying to get a list of the number of sessions each user had by user. I tried doing it this way, but


SELECT userid, MAX
((SELECT COUNT(DISTINCT sessionId) AS SESSIONCOUNT
FROM dbo.Sessions AS OD
HAVING (sessionId = O.sessionId))) AS MAXSESSION
FROM dbo.Sessions AS O
GROUP BY userid

but it throws an error 'Cannot perform an aggregate function on an expression containing an aggregate or subquery.'

Is there an elegant solution for this?

Thanks,

View 1 Replies View Related

Can I GROUP BY Aggregate Function (Like SUM)

Aug 7, 2007

Hello,

I column that calculated at run time in insert , can i gruop by this column,the new one that not exist yet

View 6 Replies View Related

How Would I Do This - Select With Aggregate Function

Apr 11, 2008

I have a table like this below:
<PRE>
Page Book Release MaxPages
1234ABC A1
1234ABC B2
9999ABC D1
9999ABC E2
7777ABC A1
7777ABC C2
</PRE>

I want to select every page of the book, but only the highest release of that page.

Something Like:

Select Book, Page, Max(Release), MaxPages
From Table


But I can't quiet figure it out.

Thanks for any help.

View 11 Replies View Related

Coalesce In Aggregate Function

Feb 6, 2014

If you use Coalesce with Count will it return all values even when null? Reason I pose this question to you is that I am running the below query and am getting escalated results than what should be returned. 1st stop on the debug train is how does Coalesce handle it....for example Boston should return only 143 but the query retunrs 194 for Boston?

Code:
Select
Count(NumOnsite),
originatingCity,
Coalesce(Convert(varchar(4000),NewspaperNames), Convert(varchar(4000),MagazineNames)) As PaperNames
From readytoshipOffsite
Group By originatingCity, Coalesce(Convert(varchar(4000),NewspaperNames), Convert(varchar(4000),MagazineNames))

View 11 Replies View Related







Copyrights 2005-15 www.BigResource.com, All rights reserved