The ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM.
Get registeredEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends September 15. Request your voucher.
Below is the measure and above is the values table (contracts x Fiscal Year x Cost per FY)
My values are all correct -- giving me the $$ that each contract will pay during the relavent FYs.
However, the Total column is very wrong. Appears to be giving me conCost / numDays. I would love some support to understand why this is happening and how to fix it.
(Filter FY Range returns 1 for each FY during the Contract date range. Returns blank otherwise)
Solved! Go to Solution.
Hi @Chewbaklava
@SELECTEDVALUE returns blank at the total level for most of (if not all) the variables. Even if you change to MAX or MIN the result at the total level will allways be wrong.
please try
Cost per FY =
SUMX (
VALUES ( FY[Fiscal Year] ),
CALCULATE (
VAR constart =
SELECTEDVALUE ( contracts[Start] )
VAR conEd =
SELECTEDVALUE ( contracts[End] )
VAR conCost =
SELECTEDVALUE ( contracts[Total Cost] )
VAR numDays =
DATEDIFF ( conStart, conEnd, DAY ) + 1
VAR daysinfy =
DATEDIFF (
MAX ( conStart, CALCULATE ( SELECTEDVALUE ( FY[FY Start] ) ) ),
MIN (
COALESCE ( conEnd, CALCULATE ( SELECTEDVALUE ( FY[FY end] ) ) ),
CALCULATE ( SELECTEDVALUE ( FY[FY end] ) )
),
DAY
) + 1
RETURN
IF ( [Filter Fy Range], daysinfy * conCost / numDays, BLANK () )
)
)
Hi @Chewbaklava
@SELECTEDVALUE returns blank at the total level for most of (if not all) the variables. Even if you change to MAX or MIN the result at the total level will allways be wrong.
please try
Cost per FY =
SUMX (
VALUES ( FY[Fiscal Year] ),
CALCULATE (
VAR constart =
SELECTEDVALUE ( contracts[Start] )
VAR conEd =
SELECTEDVALUE ( contracts[End] )
VAR conCost =
SELECTEDVALUE ( contracts[Total Cost] )
VAR numDays =
DATEDIFF ( conStart, conEnd, DAY ) + 1
VAR daysinfy =
DATEDIFF (
MAX ( conStart, CALCULATE ( SELECTEDVALUE ( FY[FY Start] ) ) ),
MIN (
COALESCE ( conEnd, CALCULATE ( SELECTEDVALUE ( FY[FY end] ) ) ),
CALCULATE ( SELECTEDVALUE ( FY[FY end] ) )
),
DAY
) + 1
RETURN
IF ( [Filter Fy Range], daysinfy * conCost / numDays, BLANK () )
)
)
Brilliant, Tysm!
User | Count |
---|---|
15 | |
13 | |
8 | |
6 | |
6 |
User | Count |
---|---|
27 | |
19 | |
12 | |
9 | |
5 |