Session

DAX User-Defined Functions: Write Once, Reuse Everywhere

For twenty years, DAX had no way to define your own reusable functions — we copied measure logic around and hoped for the best. That era is over: DAX user-defined functions are now generally available, with typed parameters, optional arguments and full support in web modeling and TMDL.

In this session we'll go from zero to a working UDF library. We'll cover the FUNCTION syntax and type hints, where functions live in the model, and how to design function signatures that survive real-world reuse. The core of the session is a live refactor: we'll take a genuinely messy semantic model — duplicated logic, inconsistent time intelligence, copy-pasted measures — and rebuild it on a small library of UDFs, then version everything with TMDL and Git so your whole team shares one set of functions.

We'll finish with the honest part: performance considerations, current limitations, and how AI assistants like Copilot and Claude can help you generate and test UDFs without introducing subtle bugs.


Level: Intermediate (200–300). Duration: 60 min (45-min cut available). Session can be delivered in English, Spanish or Portuguese.

João Barros

AI & BI Consultant · Microsoft Fabric | Power BI | Azure · Founder @bConcepts · Microsoft Certified Trainer (MCT)

Lisbon, Portugal

Actions

Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.

Jump to top