Skip to main content

Variables in DAX

Variables!!!! doesn't it sounds familiar? It is an integral part of almost every computer programming tool. Also, it plays a significant role in DAX. Let's start from square one if I introduce Var in the DAX statement that means introducing a variable. Generally, you can use variables with different combinations in DAX but there is a mandatory syntax to pass at the end of it i.e. Return where you define what value that DAX should return if the defined condition matches and the alternate result to it.

So let's clear out the ambiguity I will show how the variable works by using them in DAX under different conditions. I am considering Sample Superstore data to test the VAR. The use case is getting the West region Sales. For that, we are defining the Total Sales or Overall Sales by using the Sum of Sales and we will showcase all different regions and their respective sales.


Now, I am looking for West Region Sales. You can achieve the same by using the Calculate and filters (How to use Calculate and Filters?) but let's try to achieve it by Var. We will define a variable called "WestSales" for that.


Now, I am looking to get the percentage of sales for the west region by dividing the west sales by the overall sales. We can do this using basic calculation and dividing but let's explore how can we do the same using Var. 


As you can see we defined two variables SalesTotal and West Sales also. Let's take all the sub-categories in the matrix and let's see how much percentage of sales is contributed by West.

Yes, that's how variable functions in DAX but if you can achieve the same result without Var then why should we opt for this? Yes, you can achieve the same without Var but let's consider a scenario where you have to create lots of measures with the same fields. Generally, it occurs when you are trying to create YoY, MoM, and so on.

In such case you have to use the same field such as Sales or it can be Profit then it will be a cumbersome and repetitive task to write the same DAX again and again with a slight change. To avoid that you can use Var and define your basic DAX such as Sales last year. You can use the same variable over and over which makes the length of DAX much shorter but also improves the performance of your report. You can use the Variable to define a table or you can introduce a new calculated column using it


Pro Tip- The most important thing to keep in mind is when we are using the VAR it provides a fixed value that is not affected by a filter context.

Using VAR always proves to be beneficial as it reduces the repetitive tasks of creating the same measure over and over but you have to be very clear and decisive when you are defining the naming convention of your variables. 


Thanks for Reading  Let's connect on  LinkedIn. For more such blogs do follow us.


Comments

Popular posts from this blog

Ultimate Beginners Guide to DAX Studio

There are zillions of external tools available with Power BI but DAX Studio is one of the most commonly used tools to work with DAX queries. It is a perfect tool to optimize the DAX and the data model. In this blog let's shed some light on the basic functionalities that can take your report to the next level. ARE YOU READY?  To start you will need the latest version of the DAX Studio. You can download it from their website . Don't worry you don't have to pay for the license. Fortunately, DAX Studio is a free tool As a BI Developer, I am using DAX Studio regularly. Based on my experience I use it for several purposes but in this blog, I will highlight the most common ones. Extracting a dump of all the measures used in your PBIX. Why do we need to do this? It can be used for documentation purposes also sometimes we try to reuse the DAX and such a dump comes in handy in this scenario. How to achieve it? Open the DAX Studio it is located under the external tools once you open t

Identify and Delete Unused Columns & Measures

Heavy dashboards and a bad data model is a nightmare for every BI Developer. Heavy dashboards can be slow due to multiple reasons. It is always advised to stick with best practices. Are you still figuring out about those best practices then you should definitely have a quick read on Best Practice Analyser ( link ). One of the most common issues with slow dashboards is unused columns and unused measures.  It is very normal to load some extra columns and create some test measures in your dashboard but as a part of cleanup process those unused columns and unused measures should be removed. Why we are removing them? Because if you keep them then ultimately it will increase the size of your data model which is not a good practice.  How to identify the culprits (unused columns and unused measures)? In today's blog we will provide you with 2 most common external tools which will help you in identifying the culprits. More external tools😒. Who's going to pay for this? To your surprise

Best Practice Analyser (BPA) Guide

Do you want to save tons of efforts to check if your data model and PBIX file follows the standard best practices and norms? Then this blog is for you. If you are a follower of our channel we already deep dive into the importance of the DAX Studio as an external tool. If you are a beginner I would highly recommend to visit this blog . In today's blog we will check how Tabular Editor can help to optimize the data model.  Best Practice Analyser allows to define or import best practices. It will make sure that we do not violate the best practices while developing a dashboard. Isn't it exciting!! Before we start make sure you already have Tabular Editor version 2.24.1 installed on your system. To install it do visit this link and select the link for windows installer. Once Tabular Editor is installed it will reflect in your PBIX file under external tool. Also, we need to define the standard rules. To do so in your advanced scripting or C# script copy this and save it via Ctrl+S. An