Forum Discussion

Waseem's avatar
Waseem
Helper III
1 year ago
Solved

Applying filter on a YTD function

Dear Community    I have a measure to calculate YTD numbers as follows:   YTD-Rev-CoS = CALCULATE(SUM(Model'[Value]),DATESYTD('New Date'[Date]),ALLSELECTED('New Date'[Month]))   I have another...
  • rohit1991's avatar
    1 year ago

    Hi Waseem ,

    You're close in your approach, but the issue lies in how the filter is being applied within your DAX expression. Your original YTD measure [YTD-Rev-CoS] already performs a CALCULATE operation, and then you're wrapping that in a SUMX over a filtered table, which can lead to context issues and incorrect results. Instead, you should apply the filter directly within the CALCULATE function that defines the YTD measure. For example, revise the measure like this:
    YTD-Revenue = CALCULATE(SUM('Model'[Value]), DATESYTD('New Date'[Date]), 'Model'[Cost Type] = "Revenue", ALLSELECTED('New Date'[Month])).


    This ensures that the "Revenue" filter is applied at the same level as the time intelligence logic, maintaining proper context and yielding correct results. Wrapping an existing measure in a FILTER function post-calculation can sometimes break the intended evaluation context, especially with time functions like DATESYTD.