Forum Discussion

Khomotjo's avatar
Khomotjo
Helper II
1 year ago
Solved

Measure Adding

Hello Everyone,

 

Has anyone ever experienced a scenario where a measure adds up( or multiplies) for prior dates. I have the following measure : The measure multplies the numbers for each prior date. i.e for the 14th the no should be 167 but it is 167*2 which gives 334. Similarly for the 12th the no should be 169 but is actually 169*3 =507.

 

This is my measure:

 

Picked_Lines = VAR Analyse = MAX(Orders[Date])
RETURN
    CALCULATE(
     SUM(Orders[Product Count]),
        FILTER(ALL(Orders),(TRUNC(Orders[Finalised Date])=Analyse)
)
)
 
 
 

 

  • Hi Khomotjo ,

     

    The issue with your measure arises because FILTER(ALL(Orders), (TRUNC(Orders[Finalised Date])=Analyse)) removes all filters from the table, causing unintended cumulative calculations across prior dates. The ALL(Orders) function removes any filters applied, leading to an incorrect multiplication effect.

    To fix this, replace ALL(Orders) with ALLSELECTED(Orders), which retains the relevant filters while applying the condition correctly. This ensures that the measure calculates SUM(Orders[Product Count]) only for the intended Finalised Date without accumulating values across prior dates.

    Picked_Lines =
    VAR Analyse = MAX(Orders[Date])
    RETURN
        CALCULATE(
            SUM(Orders[Product Count]),
            FILTER(ALLSELECTED(Orders), TRUNC(Orders[Finalised Date]) = Analyse)
        )
    )
    

    By making this change, the measure will now properly return the expected values without multiplying them across previous dates. If the issue persists, consider checking if any additional filters or relationships in your data model are affecting the results.

     

    Best regards,

3 Replies

  • Hi Khomotjo ,

     

    The issue with your measure arises because FILTER(ALL(Orders), (TRUNC(Orders[Finalised Date])=Analyse)) removes all filters from the table, causing unintended cumulative calculations across prior dates. The ALL(Orders) function removes any filters applied, leading to an incorrect multiplication effect.

    To fix this, replace ALL(Orders) with ALLSELECTED(Orders), which retains the relevant filters while applying the condition correctly. This ensures that the measure calculates SUM(Orders[Product Count]) only for the intended Finalised Date without accumulating values across prior dates.

    Picked_Lines =
    VAR Analyse = MAX(Orders[Date])
    RETURN
        CALCULATE(
            SUM(Orders[Product Count]),
            FILTER(ALLSELECTED(Orders), TRUNC(Orders[Finalised Date]) = Analyse)
        )
    )
    

    By making this change, the measure will now properly return the expected values without multiplying them across previous dates. If the issue persists, consider checking if any additional filters or relationships in your data model are affecting the results.

     

    Best regards,

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi Khomotjo ,

    Did the above suggestions help with your scenario? if that is the case, you can consider Kudo or Accept the helpful suggestions to help others who faced similar requirements.

    If these also don't help, please share more detailed information and description to help us clarify your scenario to test.

    How to Get Your Question Answered Quickly 

    Regards,

    Xiaoxin Sheng

  • Anonymous's avatar
    Anonymous
    Not applicable

    HI Khomotjo,

    Any update on this? Did DataNinja777 's suggestion helps for your scenario?

    Regards,

    Xiaoxin Sheng