Solved

Calculated Measure in Cube

Posted on 2013-10-31
9
337 Views
Last Modified: 2016-02-11
Hi. Use to belong to Experts-Exchange for years and now have re-subscribed.
I am trying to create a calculated measure in a cube for an average.

What I want it to do is first determine if the count of services is 0 then 0
else divide the total turn around days by the count of services. My turn around time
is based on certain statuses.  I included a field in my status table to indicate if it is one of the statuses that the turn around time is calculated on.

WITH MEMBER [Measures].[AverageTurnAroundTime] AS
 
      [Measures].[Turn Around Days]/[Measures].[SAR Services]
      select [Measures].[AverageTurnAroundTime] on columns
      from [SAR Management]
      where [Sar Status Code].[Turn Around Time Indicator] = 1
0
Comment
Question by:LauraLynne
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 4
9 Comments
 
LVL 65

Assisted Solution

by:Jim Horn
Jim Horn earned 500 total points
ID: 39614296
>first determine if the count of services is 0 then 0
>else divide the total turn around days by the count of services

Can't help you with any SSAS aspects of this question, but raw T-SQL would be <air code>..
SELECT CASE 
    WHEN COALESCE(COUNT(services),0) > 0 THEN 0 
    ELSE SUM(Turn around days) / CAST(COUNT(Services) as numeric(19,4))  END as column_name
FROM [SAR Management]
WHERE [Sar Status Code].[Turn Around Time Indicator] = 1 

Open in new window

btw the CAST..as Numeric is so that the result has decimal values.
0
 

Author Comment

by:LauraLynne
ID: 39614359
Appreciate the help, jimhorn! Still need the solution for the cube average though. Changed the logic above to read  

case when COALESCE(COUNT(services),0) = 0 THEN 0 rather than > 0.

Now I just have to figure out how that code gets modified to MDX. Thanks
0
 

Author Comment

by:LauraLynne
ID: 39614388
I will be awarding points for your help, btw, because it is helping me in my solution. Still seeking assistance for the cube calculation. Laura
0
Free eBook: Backup on AWS

Everything you need to know about backup and disaster recovery with AWS, for FREE!

 
LVL 65

Expert Comment

by:Jim Horn
ID: 39614436
Yep.  I'll back away gracefully now to encourage SQL - SSAS experts to respond.
0
 

Accepted Solution

by:
LauraLynne earned 0 total points
ID: 39621547
We were able to find the answer in house. I am posting the solution. I am awarding jimhorn points for helping with the divide by zero logic. Thanks.

 
WITH MEMBER [Measures].[AverageTurnAroundDays] AS
IIF([Measures].[Turn Around Days]= 0,0,[Measures].[Turn Around Days]/[Measures].[SAR Services])
select {[Measures].[Turn Around Days],[Measures].[SAR Services],[Measures].[AverageTurnAroundDays] } ON COLUMNS,
         [Initial Submit Date].[Month].&[2013-10-01T00:00:00]ON ROWS
from [SAR Management]
where [Sar Status Code].[Turn Around Time Indicator].&[1]
0
 
LVL 65

Expert Comment

by:Jim Horn
ID: 39621562
Thanks for the accept, and thanks for posting your ultimate solution.
Good luck with your project.

Jim
0
 
LVL 65

Expert Comment

by:Jim Horn
ID: 39621580
btw I've noticed that there's not a lot of us SSIS experts on EE, and probably fewer SSAS experts, so you can probably score a lot of points by answering questions here.
0
 

Author Closing Comment

by:LauraLynne
ID: 39635423
We figured it out inhouse.
0

Featured Post

Enterprise Mobility and BYOD For Dummies

Like “For Dummies” books, you can read this in whatever order you choose and learn about mobility and BYOD; and how to put a competitive mobile infrastructure in place. Developed for SMBs and large enterprises alike, you will find helpful use cases, planning, and implementation.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

My client sends data in an Excel file to me to load them into Staging database. The file contains many sheets that they have same structure. In this article, I would like to share the simple way to load data of multiple sheets by using SSIS.
My client has a dictionary table. They're defining a list of standard naming convention. Now, they are requiring my team to provide us a mechanism how to match new incoming data with existing data in their system.

738 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question