Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
3 years ago
Solved

Dax code - Differences

Hello everyone,

Could you help me? I wrote three ways to got the same value. I would like to know what is the difference between them, and what is the advantage to using them. Simple situation, just one fact table.

 

Base value:

Quantity = sum(Orders[Quantity])
 
1)
Big Quantities Calculate >30 =
CALCULATE([Quantity],
    Orders[Quantity]>30
    )
 
 
2)
Big Quantities sumX >30 =
sumx(
    filter(Orders,
    Orders[Quantity]>30
    ),Orders[Quantity]
)
 
3)
Big Quantities sumX Measure >30 =
sumx(
    filter(Orders,
    Orders[Quantity]>30
    ),[Quantity]
)
 
Thank you.

 

4 Replies

  • Greg_Deckler's avatar
    Greg_Deckler
    Community Champion

    Anonymous No real difference between them, just different ways of doing the same thing. A lot of this is personal preference. There are many that are on the CALCULATE band wagon. I am not one of those people. I have a whole series of articles and videos on this topic. 

    CALCUHATE - Why I Don't Use DAX's CALCULATE Functi... - Microsoft Power BI Community

    https://www.youtube.com/playlist?list=PLoibEIc7heYNZbnY4CTCtg2tjEcMh8WbZ

     

    • Anonymous's avatar
      Anonymous
      Not applicable

      Thank you Greg_Deckler 

      This seems like a simple question, but after years working with different BI tools and doing different type of calculations, I am looking for a reason to use calculate. I think it is the most useless function that I have seen if you want to creat a really useful semantic layer. without bias or hardcode.

       

      Thank you for your clarification.

      • Greg_Deckler's avatar
        Greg_Deckler
        Community Champion

        Anonymous That kind of thinking will get you hate mail. Believe me, I know. I'm certain there is a use case out there somewhere but, yes, you are correct, CALCULATE is generally superfluous. But God forbid you actually say that. It does have the advantage of being able to "stack" your measures and calculate them in different contexts. However, I personally hate that approach as it makes debugging and troubleshooting and absolute nightmare.

  • Greg_Deckler interesting... 

    When I first started on PowerBI, I was taught to use CALCULATE and still do but I am slowly moving away from it and preferring to iterate over a virtual table as it is easier to read..

     

    Thanks for sharing your aricle