The ultimate Microsoft Fabric, Power BI, Azure AI, and SQL learning event: Join us in Stockholm, September 24-27, 2024.
Save €200 with code MSCUST on top of early bird pricing!
Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started
Hi all,
I am trying to have a measure that is calculating the sum of FTE's like in the picture below. The problem is that each person can not be measured as more than one FTE, but can be less. The measure for FTE should be something like
SUM(IF("Hours sold" / "Normal Hours" > 1 , 1 , "Hours sold"/"Normal Hours"), except that is needs to do this for each person and not for the total dataset.. Anyone have a good solution?
How it currently works:
Person | Hours Sold | Normal Hours | FTE |
1 | 1003 | 800 | 1,25 |
2 | 600 | 800 | 0,75 |
3 | 760 | 800 | 0,95 |
4 | 1008 | 800 | 1,26 |
5 | 1133 | 800 | 1,42 |
5,63 |
How I want it:
Person | Hours Sold | Normal Hours | FTE |
1 | 1003 | 800 | 1,00 |
2 | 600 | 800 | 0,75 |
3 | 760 | 800 | 0,95 |
4 | 1008 | 800 | 1,00 |
5 | 1133 | 800 | 1,00 |
4,7 |
PS: The calculation is a bit more complex than above because there is also timing to be considered, hence I can't get calculated columns to work on this
Thank you in advance!
Here is the Calculated Column not according to the Person Column
Column = IF(Table1[Hours Sold]/Table1[Normal Hours]>1,1,Table1[Hours Sold]/Table1[Normal Hours])
&
Here is the Measure according to the Person Column
Measure = CALCULATE(IF(SUM(Table1[Hours Sold])/SUM(Table1[Normal Hours])>1,1,SUM(Table1[Hours Sold])/SUM(Table1[Normal Hours])),ALLEXCEPT(Table1,Table1[Person]))
Hi @iamprajot,
Thank you for your response. Unfortunately, it doesn't quite solve it. We need the filtering to be on each person as well. Additionally, there is time to consider here, as the calculation consists of multiple rows within a time frame (adding up to the rows in the example I provided above). Your measure below looks correct, except that the total row should add up to 4.7 and not 1.
I'm trying to think how to better explain it. In R or other programming languages I would have written a lapply or for loop checking for each person in the timeframe given, sum up all sold hours and divide by the expected number (normal hours). If that number is above 1, then 1, ifelse use the calculated number.
Last we want to sum all of these to get the total number of FTE.
Any suggestions?
Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.
Check out the August 2024 Power BI update to learn about new features.
User | Count |
---|---|
118 | |
87 | |
75 | |
53 | |
45 |
User | Count |
---|---|
135 | |
121 | |
77 | |
65 | |
64 |