Awesome video. I've been working with DAX for 3 years and this is the first time I feel I've really understood how context transition works. I've gone through the Definitive Guide to DAX and Building Data Models with Power Pivot and neither one provides an explanation as clear as in this video.
Thanks for this explanation. Ive been working with power BI since 2017 and this is a great explanation. I truly don't understand why microsoft has not tried to build similar videos to explain this complexity. They've got documentation but it just doesn't translate for the majority of users
This is by far the best video on context transition. You are an incredible teacher. You broke this down without any assumptions and in a step-by-step fashion. Please do like a proper dax and power bi course and not just private lessons. Thanks a lot. I need to reiterate again, you are an excellent teacher. NOTE: The Canada value is wrong for anyone wondering. It should be 15.
By far the most detailed and clear depiction of context I've seen. You don't let any assumption go unchallenged, which I appreciate. Many other videos assume I already understand some aspect of a formula (when I don't).
I have watched about 10 videos on Context Transition on UA-cam and this video is by far the clearest explanation of this topic. To explain a difficult topic in an easy to understand manner is no easy task and most videos that I've seen miss that point. However, this 30 minutes will be well worth your while investing in learning about Context Transition with a brilliant explanation and visual guide. Thank you for this tutorial!
WoW... I don't even remember how many times I have tried to understand this concept by referring to various links... even from the experts. However, this one video is the only thing required to understand the DAX pattern/behavior around context transition. I am surprised to see only 1.9K followers even after 10K views on this video. I immediately followed the channel with a hope to learn more in future. I can clearly understand the amount of effort that the trainer has put in to walk through this concept with so may different sheets in excel each having a new step/explanation on this topic.
Finally some light over this grey area. Context transition has never been explained so visually. I"ve been using DAX for 3 years now and was still clueless on this topic. Thumbs up :-)
Excellent video. Even after reading many books I was not very clear on this concept. Your simplified explanation showed the inner workings of the calculation. Thank you so much for sharing your knowledge.
Congratulations Brian. I have read/watched many books/articles/blogs/courses/videos on this subject but have never been that comfortable with the concept until now. Thanks!
I am so glad I ran across this video. Great explanation of context transition using calculate. Super clear and helpful approach to thinking about what's going on. Like others have said, I read a lot and watched a lot of videos on this topic but this is by far the best explanation I have found. Great job. I'm now a subscriber. Thanks.
Thanks a lot for Putting this Video .very crisp and clear , i have gone through many books and videos to understand this topic and i can say finally this video made my day . much appreciated
I couldn't to be more thankful for your great work! In fact, one thing which I didn't get my head around is WHAT'S THE EVALUATION CONTEXT FOR A NESTED FUNCTION CALL, like SUMX inside MAXX in your video. Great many thanks to your in-depth illustration, this issue wouldn't haunt me any more, I hope.
Great Demonstration and explanation of Calculate and why it is necessary to use. I am sure this will clear confusion up for many. I doubt I could have explained why (especially to someone else) before seeing this video. Also explains why measure branching (using measures in other measures) works -- because of the change in context. Great Job!
I love that you showed these concepts in excel. I've read the dax guide Bible, took the video course, and still learned something from this video. Creating a bucket of the filter context and 'promoting' row into filter context was a great visual for me. Thanks!
Hi Brian, Thanks for nice video! I have one question in bad function why "CAN" value is showing 23. As i am new in DAX , i think it should be 15.Please explain Regards Nitin Verma
Thank you Brian G! You're like the blonde ale I'm drinking, crisp and clear. I've gone through several literature on this topic but was always confused up until now. Or maybe it's the alcohol instead?
Quick question, Brian: isn't the amount for Canada in the Bad column wrong? Using the flow you've presented which makes perfect sense, shouldn't it be 15 though?
Hey Adi, you're totally correct, great catch! I try and proof these things but mistakes do tend to slip through on occasion. I've updated the values in the follow along workbook. Hope it was helpful otherwise!
CSG Pro, it was extremely helpful, actually by following what you've taught us I ended up discovering the mistake because I tried replicating the thinking for Canada. Therefore without your lesson I wouldn't have found it. Thank you, sir! PS. Grand total is 38 also as it runs the engine with no filtering, therefore adding everything, isn't it?
Exactly :-) The Filter Context starts empty (which in the absence of slicers and report filters is what Grand Total really means), then stays empty the entire time because CALCULATE() never gets used to promote/transition each "customer"'s Row Context into the Filter Context for any of the sale table calls. Hence each call to the sale table brings back the entire thing; hence the sum of amt's then is just ALL sales. Very glad to be of help!
Great content, just a tip, would it be possible to add a comment to that section of the video, just to highlight that value is not correct. I actually got distracted from your brilliant video trying to find out why that value for CAN is 23 as well :)
Hey Brian! I am enjoying watching the series you created. Your teaching style is by far one of the best that I came across on You Tube regarding DAX. Dou have any book that you deeply dive into all the DAX concepts? "Muito obrigado" from Brazil!
This is great. Does an excellent job of simplifying a concept that was making my brain hurt. It still hurts, but at least now it somewhat understands why it hurts.
The end examples starting at 26mins would have benefited from visuals showing the filtering IMO. Excellent video and hope you do another on the end DAX examples.
27:15 any advice on where to deep dive why MAXX on the other side of the Boolean operator is not affected by FILTER(ALL(),) ? Thanks for a great video btw!!!
Hi, Joshua. As shown and narrated at 7:20, another function call doesn't get affected by the the row context unless an explicit CALCULATION call. Hope this might be of some help.
For CAN, I tried to visualise the same way as USA. We have only 1 row in 'cus' table and 2 rows in extended 'sales' table, both good and bad results should be 15 right?? How come the final result of yours says 23 for good when it's CAN? Could you please explain?
Hello, I have done the exercise with the measure LY Sales BadA of the sheet D19B and I've taken the job of doing something similar to what you've shown :-)). Only for study purposes, I would like to ask if you can review it to be sure if I have understood it well. Regards.
Hi Can one explain about the sentence which he was telling that measures are always wrapped with calculate then why didnt the measure give corrct result bad=MAXX(cus(sumx(sales,salesamt+)))
Hello Brian - This video was by far excellent explaining the concepts of Context transition, and thank you very much for graphical representation, that really helped to get the concept drive home. I have one question though on the measure. Instead of Maxx, if we would have gone through Max(Cust, Sumx(Sales,Price+0)), would there be any difference ?
Interesting technical approach with a lot of sheets for every step 😂 Maybe it would be easier to use white boxes over next elements, and to unhide them with VBA, or object selection window. Cheers
Shouldn't the cell in the bad column and the CAN row have the value of 15? It's just the USA one that returns the wrong result but Canada doesn't because there is only one person from Canada.
Hey Sandip; I definitely hear you; I went the static route because I thought it'd make it easier to not get lost in the "where are we in the overall screen" and make sure if people's eyes want to pop back and forth between other bits of data that nothing was ever obscured on the screen. I may try and rerecord with some zooming to see if that works better. If you haven't, be sure to select 1080 as the viewing resolution in the bottom right corner of the screen; that helps a ton. Thanks for watching!
Hi guys, Great video, it really made a confusing concept simple. One thing that I am still unsure about. Does context transition only apply when using a calculated column given it doesn't have a filter context? On the contra, does context transition therefore not apply in measures because you always have a filter context (even if blank) so applying a CALCULATE() in a measure doesn't impact the calculation with respect to context transition? Cheers KC
Thanks very much! Glad you enjoyed it :-) I've turned on subtitles though it looks like Google only wants to translate to English. Maybe that's just on my machine. I dunno if I can get the time to write a closed caption metadata file by hand, though if someone wanted to send me an audio recording with translation (and me quieter in the background as reference), I'd be happy to work it in using Premier. (If that someone were to be in Portland I'll even help record it :-) )
Hey Eladio, I'm not sure why UA-cam automatic captions have not processed for this video. I have reset the language to English, so hopefully they should be up in the next couple days. I will check in later this week to see if they went through. Thanks for your interest! Hola Eladio, no estoy seguro de por qué los subtítulos automáticos de UA-cam no se han procesado para este video. He restablecido el idioma al inglés, así que espero que estén listos en los próximos días. Me registraré a finales de esta semana para ver si pasaron. ¡Gracias por tu interés!
Awesome video. I've been working with DAX for 3 years and this is the first time I feel I've really understood how context transition works. I've gone through the Definitive Guide to DAX and Building Data Models with Power Pivot and neither one provides an explanation as clear as in this video.
I concur! Shame this guy does not have enough subscribers. He is a hidden gem on UA-cam. I'm subscribing
Thanks for this explanation. Ive been working with power BI since 2017 and this is a great explanation. I truly don't understand why microsoft has not tried to build similar videos to explain this complexity. They've got documentation but it just doesn't translate for the majority of users
This is by far the best video on context transition. You are an incredible teacher. You broke this down without any assumptions and in a step-by-step fashion. Please do like a proper dax and power bi course and not just private lessons. Thanks a lot. I need to reiterate again, you are an excellent teacher.
NOTE: The Canada value is wrong for anyone wondering. It should be 15.
I have read numerous books and watch numerous videos but not even a single source has broken this concept to this level. AWESOME!
By far the most detailed and clear depiction of context I've seen. You don't let any assumption go unchallenged, which I appreciate. Many other videos assume I already understand some aspect of a formula (when I don't).
I have watched about 10 videos on Context Transition on UA-cam and this video is by far the clearest explanation of this topic. To explain a difficult topic in an easy to understand manner is no easy task and most videos that I've seen miss that point. However, this 30 minutes will be well worth your while investing in learning about Context Transition with a brilliant explanation and visual guide. Thank you for this tutorial!
WoW... I don't even remember how many times I have tried to understand this concept by referring to various links... even from the experts. However, this one video is the only thing required to understand the DAX pattern/behavior around context transition.
I am surprised to see only 1.9K followers even after 10K views on this video.
I immediately followed the channel with a hope to learn more in future. I can clearly understand the amount of effort that the trainer has put in to walk through this concept with so may different sheets in excel each having a new step/explanation on this topic.
Finally some light over this grey area. Context transition has never been explained so visually. I"ve been using DAX for 3 years now and was still clueless on this topic. Thumbs up :-)
great visual explanation, I've really understood how context transition works
Excellent video. Even after reading many books I was not very clear on this concept. Your simplified explanation showed the inner workings of the calculation. Thank you so much for sharing your knowledge.
Congratulations Brian. I have read/watched many books/articles/blogs/courses/videos on this subject but have never been that comfortable with the concept until now. Thanks!
Excellent explanation!! Thank you! This helped me to get a better understanding of the existing contexts.
Superb video. Best 30 mins of my DAX study
I am so glad I ran across this video. Great explanation of context transition using calculate. Super clear and helpful approach to thinking about what's going on. Like others have said, I read a lot and watched a lot of videos on this topic but this is by far the best explanation I have found. Great job. I'm now a subscriber. Thanks.
Amazing Stuff Right Here! This is the first time I have understood context transition completely!
I've watched 2 videos but already LOVE this channel!!!
I have looked into tons of videos and vlogs on context transition but this is the only one that makes any sense to me. Thanks!
Best explanation ever of Context Transition in DAX!
Thanks a lot for Putting this Video .very crisp and clear , i have gone through many books and videos to understand this topic and i can say finally this video made my day . much appreciated
I couldn't to be more thankful for your great work!
In fact, one thing which I didn't get my head around is WHAT'S THE EVALUATION CONTEXT FOR A NESTED FUNCTION CALL, like SUMX inside MAXX in your video.
Great many thanks to your in-depth illustration, this issue wouldn't haunt me any more, I hope.
The best explanation I ever found! The hidden gems, keep up your excellent works buddy.
Great Demonstration and explanation of Calculate and why it is necessary to use. I am sure this will clear confusion up for many. I doubt I could have explained why (especially to someone else) before seeing this video. Also explains why measure branching (using measures in other measures) works -- because of the change in context. Great Job!
One of the best explanation on Context Transition I have seen yet.
I love that you showed these concepts in excel. I've read the dax guide Bible, took the video course, and still learned something from this video. Creating a bucket of the filter context and 'promoting' row into filter context was a great visual for me. Thanks!
Hi Brian,
Thanks for nice video!
I have one question in bad function why "CAN" value is showing 23. As i am new in DAX , i think it should be 15.Please explain
Regards
Nitin Verma
Once again, Brilliant stuff, very well designed and explained.
thank you so much for your work, we really needs these deep-dive visuals to learn DAX more absorbable
Excellent video. Left a detail comment in the row vs filter Context video. Thanks for the exceptionally well done video.
okay I'm learning Dax and I just wanna say thanks, I was so confused but this was really helpful, I might go back and watch your entire series
Wow! One of the best explanations I have seen.
Excellent video. Simple and clear step-by-step explanation. Thanks!! Please continue.
Brian, this is the best explanation I have got on this subject. Read a few pages on a book but couldn't figure it out. Thanks
This is a GREAT way to learn. Keep them coming, please!!!!
Good stuff. Really appreciate your polite handholding in understanding this.
Excellent video, explaining step by step like peeling off an onion layer by layer, crystal clear 😍😍
Saved for future reference and to help others. Thank you
Thanks a lot brain, finally i understood exactly what context transition is ... rally thanks. God bless you.
Thank you Brian G! You're like the blonde ale I'm drinking, crisp and clear. I've gone through several literature on this topic but was always confused up until now. Or maybe it's the alcohol instead?
Quick question, Brian: isn't the amount for Canada in the Bad column wrong? Using the flow you've presented which makes perfect sense, shouldn't it be 15 though?
Hey Adi, you're totally correct, great catch! I try and proof these things but mistakes do tend to slip through on occasion. I've updated the values in the follow along workbook. Hope it was helpful otherwise!
CSG Pro, it was extremely helpful, actually by following what you've taught us I ended up discovering the mistake because I tried replicating the thinking for Canada. Therefore without your lesson I wouldn't have found it. Thank you, sir!
PS. Grand total is 38 also as it runs the engine with no filtering, therefore adding everything, isn't it?
Exactly :-) The Filter Context starts empty (which in the absence of slicers and report filters is what Grand Total really means), then stays empty the entire time because CALCULATE() never gets used to promote/transition each "customer"'s Row Context into the Filter Context for any of the sale table calls. Hence each call to the sale table brings back the entire thing; hence the sum of amt's then is just ALL sales. Very glad to be of help!
Noticed the same thing, glad for pointing it out
Great content, just a tip, would it be possible to add a comment to that section of the video, just to highlight that value is not correct. I actually got distracted from your brilliant video trying to find out why that value for CAN is 23 as well :)
Hi Brian, Best ever video on context transition
Hey Brian! I am enjoying watching the series you created. Your teaching style is by far one of the best that I came across on You Tube regarding DAX. Dou have any book that you deeply dive into all the DAX concepts?
"Muito obrigado" from Brazil!
Brilliant explanation - first time I feel like I've really understood the concept.
The visualization of context transition is fantastic. Really enjoying your videos.
Thanks! Glad you liked it!
Excellent video. Interesting evolution through sheets. Congrats.
This is great. Does an excellent job of simplifying a concept that was making my brain hurt. It still hurts, but at least now it somewhat understands why it hurts.
Thank you for making this explanation! This video is absolutely helpful.
Absolutely Brilliant! thanks for sharing such amazing content
The end examples starting at 26mins would have benefited from visuals showing the filtering IMO. Excellent video and hope you do another on the end DAX examples.
Again an excellent video explanation!!! I would be so great to get the link of the workbooks you used for your videos.
Thanks for watching! Here's this workbook. The other will follow shortly.
1drv.ms/f/s!AqxW-T1EoGfY-SkGgIE8uDPsdbr-
Great content as always Grant!! Thank you.
great present but following your explanation I dont think we can get CAD/BAD = 23. Should they be 15 instead ?
Why haven't I seen this video before. Superb!
27:15 any advice on where to deep dive why MAXX on the other side of the Boolean operator is not affected by FILTER(ALL(),) ? Thanks for a great video btw!!!
Hi, Joshua.
As shown and narrated at 7:20, another function call doesn't get affected by the the row context unless an explicit CALCULATION call.
Hope this might be of some help.
But should the bad Canada total be 15?
Yes and and the bad total should be 38. Anyway, it is a good explanation of the topic, we can disregard this small mistake.
This is great explanation thanks a lot for the good work! keep it up!
Best explanation really! Thank you
Great work, Brian!
For CAN, I tried to visualise the same way as USA. We have only 1 row in 'cus' table and 2 rows in extended 'sales' table, both good and bad results should be 15 right?? How come the final result of yours says 23 for good when it's CAN? Could you please explain?
Thank you, Brain for the explanation. It does make sense!
Hello, I have done the exercise with the measure LY Sales BadA of the sheet D19B and I've taken the job of doing something similar to what you've shown :-)). Only for study purposes, I would like to ask if you can review it to be sure if I have understood it well. Regards.
Hi
Can one explain about the sentence which he was telling that measures are always wrapped with calculate then why didnt the measure give corrct result
bad=MAXX(cus(sumx(sales,salesamt+)))
This Video is really good. I wish I found this video earlier.
Thank you so much for your amazing explanation!
A lot of work goes into making these but hearing that it's helpful for people really does make it all worth it!
Thank you for this video! I found it extremely helpful.
Hello Brian - This video was by far excellent explaining the concepts of Context transition, and thank you very much for graphical representation, that really helped to get the concept drive home. I have one question though on the measure. Instead of Maxx, if we would have gone through Max(Cust, Sumx(Sales,Price+0)), would there be any difference ?
must watch for everyone who try to understan this topic
Interesting technical approach with a lot of sheets for every step 😂
Maybe it would be easier to use white boxes over next elements, and to unhide them with VBA, or object selection window.
Cheers
Awesome video. won a subscriber
Thinking how CANADA got 23 instead 15?
Great explanation. Thanks for providing the workbooks to download (see comment by TheCric1 and reply).
what a great explanation :):):)
May I have the excel file ?
Shouldn't the cell in the bad column and the CAN row have the value of 15? It's just the USA one that returns the wrong result but Canada doesn't because there is only one person from Canada.
Many thanks for this video!
Why using Maxx in the date table? Max(Date[Year]) is enough, no?
Awesome dude, thanks
I cant believe this video is for free :D
What a legend ❤
many thanks, great video
You are a genius !!!
I found the screen text too small to follow along. It would be great if you could zoom in relevant areas of worksheet as you explain.
Hey Sandip; I definitely hear you; I went the static route because I thought it'd make it easier to not get lost in the "where are we in the overall screen" and make sure if people's eyes want to pop back and forth between other bits of data that nothing was ever obscured on the screen. I may try and rerecord with some zooming to see if that works better. If you haven't, be sure to select 1080 as the viewing resolution in the bottom right corner of the screen; that helps a ton. Thanks for watching!
It is best viewed in HD resolution.
Excellent
Hi guys,
Great video, it really made a confusing concept simple.
One thing that I am still unsure about. Does context transition only apply when using a calculated column given it doesn't have a filter context?
On the contra, does context transition therefore not apply in measures because you always have a filter context (even if blank) so applying a CALCULATE() in a measure doesn't impact the calculation with respect to context transition?
Cheers
KC
Great video -Thanks,
Excellent!!! Very very GOOD!!!
Thanks very much! Glad you enjoyed it :-) I've turned on subtitles though it looks like Google only wants to translate to English. Maybe that's just on my machine. I dunno if I can get the time to write a closed caption metadata file by hand, though if someone wanted to send me an audio recording with translation (and me quieter in the background as reference), I'd be happy to work it in using Premier. (If that someone were to be in Portland I'll even help record it :-) )
Great!
I will promote this channel
Thank you so much
Really good.
thanks for help mein brazil.
Sorry, there goes the link with the work book. jmp.sh/6E1idsK
It would be good if you activate the subtitles in Spanish. Thank you.
It would be good if you activate the subtitles in Spanish or English Thank you.
Hey Eladio, I'm not sure why UA-cam automatic captions have not processed for this video. I have reset the language to English, so hopefully they should be up in the next couple days. I will check in later this week to see if they went through. Thanks for your interest!
Hola Eladio, no estoy seguro de por qué los subtítulos automáticos de UA-cam no se han procesado para este video. He restablecido el idioma al inglés, así que espero que estén listos en los próximos días. Me registraré a finales de esta semana para ver si pasaron. ¡Gracias por tu interés!
How is it possible that there is a 23 and 23 for "bad measure"? Even if this is not correct, incorrect values should be 15 and 23?
THANK YOU!
I have over 700 followers on LinkdIn and I will promote this video!
Brian, this is the best explanation I have got on this subject. Read a few pages on a book but couldn't figure it out. Thanks