DAX Query Language Visual
I see big value in creating a visual that can display the results of a DAX query. One way this could be deployed is a follows.
* Add the new visual to the report canvas
* Write a DAX query that returns a table (of course) and add this to the visual
* The visual would respect any cross filtering coming from the report just like any other visual.
This would give report writers very granular control to display records without having to use a table visual and a measure that triggers the display of the correct records.
At the moment we don’t have any plans to implement this. It sounds like it’s mostly useful for learning/training? If there are other ‘production’ scenarios that you think it’d be useful, where a regular table/matrix wouldn’t work, please let us know in the comments!
Pedro Sanz commented
I totally agree with the last comment made on 2020 feb 5th, it could be great to make your own DAX script to avoid the issues when filtering the visual by a measure
Narayana Windenberger commented
One of the most important use cases of a dedicated DAX table visual is performance, especially when filter a table by a measure. I've done tests where the SUMMARIZECOLUMNS query that Power BI generates for a table takes 2-3x longer than an equivalently optimized version that I write using my own DAX. Same results, slower performance.
Even in a more general sense a concept in tabular similar to Views in sql would be great. A calculated table that includes current evaluation context/does not actually evaluate until it is called. If this could be another "table type" that a user/report developer could click and drag columns from this could be even more useful.
Luiz Florencio commented
For sure would be good (to production environment) to create complex dax measures wich returns data table. (like Dax Studio does :) )
Venkatesh Ramakrishnan commented
Very Very useful in debugging complex dax measures.
This would definitely help in building some complex queries (RANKX comes to mind) with multiple filter conditions - the truth is that wrapped DAX expressions can become very frustrating to dissect very quickly.
This isn’t learning training. This is development. It is very diff in a complex measure that isn’t working to figure out what is going on. This would allow us to see to tables a function returns without having to fire up DAX Studio on the side.
@Will Thompson: This isn't a training/learning feature at all. This is an advanced feature for people who know DAX well and want to be able to make reports more sophisticated than what is possible by dragging/dropping fields and measures.
This would absolutely transform how useful Power BI is. At the moment, visuals use a very abstracted view of the data model, which is then translated into DAX by the Power BI engine. This approach is good for allowing drag/drop fields and so on, but causes excessive friction when attempting to make a query that doesn't quite fit the abstracted model. For example, when including special logic for filtering rows based on BLANK() values.
One of the best ideas. That will be the best teacher of DAX and Power Bi.
[Deleted User] commented
Great Idea It would help for people like me how are weak in DAX
Steven Neumersky commented
I'm hoping a DAX Context display "visual" comes out soon as I suggested here: https://www.sqlbi.com/articles/context-transition-and-filters-in-calculate/?utm_source=wysija&utm_medium=email&utm_content=more&utm_campaign=1-2018
Andrés Argüello commented
@Paul, Its different because its affected by slicers in your report context. For example if you have a sales table with some dimensions like client, date, product and two numeric fileds: units and revenue. You could easily write a query to see the total units and avg price by price range, and then play with different slicers so the table will show you the distribuition of your sales for the current selection. Furthermore you could define the number of buckets for the price range in another slicer and play with detail level too.
Finally if you implement this via a dynamic data layer as I sugest you could use any visual on top of your query and for example create a dynamic histogram.
All this is trivial to do in Tableau and really really complicated/impossible in PBI. In my opinion distribuition visualization is the greatest weakness of this tool. Sanddance was a step in the right direction but its development seams to be stopped, so I really hope they eventually implement this idea.
Paul Turley commented
I get the idea but how is this different from adding another table to the model, with or without relationships to other tables?
Andrés Argüello commented
It would be even better if we could use those dynamic queries in any visual. Like dynamic data layer with tables affected by current context filters. This way we could have dynamically calculated columns and a simpler way to calculate some complex measures.
i dont quite understand what you mean....
A visual that you can use with a "drop" of a table instead of a drop of a column or measure and then responds well to cross-filtering has my vote!
Matt Allington commented
I also do this in Excel, but in Excel it doesn’t respect filters. If it would do this is would be killer!
Great suggestion. I find this capability very useful in Excel.