After years in “stealth mode,” we’re excited to introduce DAX Optimizer.
Dive deeper here: https://t.co/fNHF3fKMIN
DAX Optimizer is a tool – delivered as a service – that helps identify potential bottlenecks and suggests impactful solutions and priorities. You still write the code, but it is like you have a mentor on the side teaching you best practices, focusing on the most impactful area of your measures.
Spend your time where it matters, getting immediate improvements. For example, you may have 200 measures, many of which have similar coding practice issues: Where to start? DAX Optimizer guides you to the more important measures, which could be the ones that are more frequently used by other measures and not necessarily those that directly appear on any report.
Now that we are out of stealth mode, we have much to say: how it works, how it preserves sensitive data, how it works for teams and individual developers, and share the plans to improve it over time. We will do that in the coming weeks.
Where are we now? Our beta program is live, initial users are onboarded, and the waitlist is growing. We’re gradually rolling out invitation codes in the coming weeks. The service is functional, the UI for a single developer is polished, and the documentation is shaping up.
While we work towards our public release, we’ll be actively seeking your feedback to refine DAX Optimizer. We won’t be rolling out a major marketing campaign yet, as we’re committed to perfecting the tool. Do not expect videos or articles from us until public release.
That said, beta participants are welcome to share their experiences, as we do not require any NDA. Articles, videos, with the good and the bad – all are fair game. We believe in transparency!
Join us in shaping the future of coding with DAX Optimizer. Your code, optimized.
https://t.co/nZoqB683iR
Good news: Copilot in Outlook was helpful today (I included a screenshot when asking for help).
Bad news: Microsoft changed the layout for consistency (?), making at least one user (ME!) angry.
I would like to understand the rationale behind this being more helpful/productive (it is not IMHO).
#outlook #Microsoft365 😞
Visualize your semantic model data with Vega/D3.js from Fabric with data apps - a type of Fabric app. Custom web dashboards are now possible.
This is probably the most interested I've been in a new Power BI or Fabric feature, ever.
Read about it: https://t.co/3NC2lnUwOF
DAX User-Defined Functions (UDF) are generally available!
The cherry on the cake is optional parameters: a long-awaited feature during preview is included in this release.
For now, read the official Microsoft announcement; we'll produce more content on SQLBI in the coming weeks!
https://t.co/H6rfKPVLua
Now you have no more excuses!
#dax #powerbi #udf
ALL, ALLSELECTED, ALLEXCEPT, and REMOVEFILTERS: There are several DAX functions to remove filters from the filter context. In this article + video, we analyze the differences among them and clarify what to use depending on the requirements.
#dax#powerbi
https://t.co/GqTg0xCAxi
Hot take for a Saturday morning:
The new card visual debate has produced more LinkedIn posts than actual card visuals in production.
Anyway, if you're tired of the whole thing, OKViz has this thing called Card with States. States, thresholds, colors, you know the drill. Certified and free forever. Just saying. https://t.co/PkTMrFag0T
How did you actually handle the switch? Wrong answers only, it’s Saturday ;)
Your office has 200 desks and no fixed assignments. People move around, teams rotate, and meeting rooms change by the hour.
Tracking that in a spreadsheet gets old fast. Synoptic Panel in Power BI lets you take a floor plan, connect it to your reservation data, and see who sits where in real time. Switch floors, check availability and zoom in.
The map in this video is made up, but the problem is not, we've had companies come to us with exactly this setup.
And yes, this could be a legit use case for DirectQuery!
𝗥𝗲𝗮𝗱 𝘁𝗵𝗲 𝗳𝘂𝗹𝗹 𝗰𝗮𝘀𝗲 𝘀𝘁𝘂𝗱𝘆 𝗵𝗲𝗿𝗲:
https://t.co/Oxi2slTEvo
𝗧𝗿𝘆 𝗦𝘆𝗻𝗼𝗽𝘁𝗶𝗰 𝗣𝗮𝗻𝗲𝗹
https://t.co/MCFEo2XLfg
@MohamedElhindaw Hopefully yes. Moving to functions is the first step, then we could refresh the content based on that. That said, the patterns conceptually are the same.
After years in “stealth mode,” we’re excited to introduce DAX Optimizer.
Dive deeper here: https://t.co/fNHF3fKMIN
DAX Optimizer is a tool – delivered as a service – that helps identify potential bottlenecks and suggests impactful solutions and priorities. You still write the code, but it is like you have a mentor on the side teaching you best practices, focusing on the most impactful area of your measures.
Spend your time where it matters, getting immediate improvements. For example, you may have 200 measures, many of which have similar coding practice issues: Where to start? DAX Optimizer guides you to the more important measures, which could be the ones that are more frequently used by other measures and not necessarily those that directly appear on any report.
Now that we are out of stealth mode, we have much to say: how it works, how it preserves sensitive data, how it works for teams and individual developers, and share the plans to improve it over time. We will do that in the coming weeks.
Where are we now? Our beta program is live, initial users are onboarded, and the waitlist is growing. We’re gradually rolling out invitation codes in the coming weeks. The service is functional, the UI for a single developer is polished, and the documentation is shaping up.
While we work towards our public release, we’ll be actively seeking your feedback to refine DAX Optimizer. We won’t be rolling out a major marketing campaign yet, as we’re committed to perfecting the tool. Do not expect videos or articles from us until public release.
That said, beta participants are welcome to share their experiences, as we do not require any NDA. Articles, videos, with the good and the bad – all are fair game. We believe in transparency!
Join us in shaping the future of coding with DAX Optimizer. Your code, optimized.
https://t.co/nZoqB683iR
We spend a lot of energy making fun of BI analysts and developers. This time it's the users' turn.
User-aware calculated columns are now a thing in DAX. The report can personalize itself based on who's viewing it. Translations, dynamic content, no RLS needed.
Turns out, not everyone loves the idea of their report knowing who they are. Which raises two questions:
1) Have you ever heard of system logs?
2) What exactly are you doing in that report that you don't want anyone to know about? 😎
If you want the technical details: https://t.co/lJnPiPaZmm
What kind of parameters can you use in DAX user-defined functions?
This video introduces parameter types and passing modes in DAX UDFs: learning the difference between VAR and EXPR passing modes is the critical element to learn.
A practical demo to understand how parameters work in UDFs and why they matter when creating reusable DAX logic.
Watch the full video here: https://t.co/vYLPhnjlU4
This article+video describes the new Expression Context property for calculated columns in Power BI, explaining how 𝘂𝘀𝗲𝗿-𝗮𝘄𝗮𝗿𝗲 𝗰𝗮𝗹𝗰𝘂𝗹𝗮𝘁𝗲𝗱 𝗰𝗼𝗹𝘂𝗺𝗻𝘀 work, why they are not materialized, and how to use them as 𝘃𝗶𝗿𝘁𝘂𝗮𝗹 𝗰𝗮𝗹𝗰𝘂𝗹𝗮𝘁𝗲𝗱 𝗰𝗼𝗹𝘂𝗺𝗻𝘀 for localization and custom security scenarios.
#powerbi #dax
https://t.co/lJnPiPaZmm
AI agents help you do your work. Will they also decide when you need a vacation? ;)
If you don't get the reference, Plan is a new Fabric feature for Enterprise and Corporate Performance Management, launched a few months ago, when we published the comic on our SQLBI Newsletter.
Plan is not AI-based, since it’s Saturday, we just thought it was fun to imagine what would happen if it were.
If you prefer boring stuff on a Saturday, here's the documentation:
https://t.co/Dh9xJaWXVk
Baltimore, May 27-29.
This is the last Mastering DAX class in North America before fall.
Three days, in person, small group. The kind of class where you actually get to ask your questions and work through your specific problem.
After this, the next US date won't be until late 2026. If it's been on your list, now is the time.
https://t.co/nedsCNxUeL