Power BI Weekly

Issue 382

6th November 2026

Two official posts to start us off this week. Kay Unkroth has announced that Power BI reports now support OAP exceptions for semantic models in separate workspaces (in preview), which removes the original restriction that a report in an outbound access protection workspace had to use a semantic model in that same workspace, so the familiar pattern of a central team owning shared models while business teams build reports elsewhere now works with OAP switched on (provided a workspace admin explicitly allows each destination). Also from the team, Miguel Escobar has kicked off a six-part Power Query Corner series on the new Power Query experience with Finding and connecting to data in the new experience, explaining the move to task-focused Get data modules and discussing the five most-reported Get data problems and what's being done about them.

Over in the community, Chris Webb has offered some simple, clear advice for organisations that want to let users chat with their data: start with M365 Copilot's integration with the Power BI semantic models you already have, before reaching for Data Agents or Ontologies. On the performance side, Nikola Ilic has measured how your lakehouse design decisions affect Direct Lake performance, writing the same 500 million rows to Delta tables in several different ways and seeing cold queries range from under a second to around 14 seconds (a reminder that the semantic model itself isn't always to blame).

Finally, Michael Kovalsky has blessed us with a handful of interactive UIs in Semantic Link Labs, which turn tools like Vertipaq Analyzer, Lineage View, Refresh Manager and a Perspective Editor into point-and-click experiences you can open with a single function call in a Fabric notebook. Even less code for us to write. (Yay? 😢)

Data Prep

  • The App Revolution - Ep.578 - Power BI tips Mike and Tommy debate whether agentic development and Microsoft's growing set of app-building tools (Fabric Apps, SQL apps and more) solve real business problems or just create a new wave of ungoverned sprawl. They look at what it means for report developers now that building an app can be easier than building a report, and the guardrails teams need before it reaches their tenant.
  • Power BI Git Branching with PBIP | Source Control Tutorial The second video in a Power BI with Git series shows how Git branching works with PBIP projects, covering the main branch, feature branches, and how separate branches let developers work on the same Power BI report in parallel.
  • Power Query Corner: Finding and connecting to data in the new experience (Preview) The first post in a six-part Power Query Corner series on the new Power Query experience (preview). Get data now uses task-focused modules (New, Recent data, OneLake catalog, Blank table, Blank query) so you can start from what you already know rather than a connector list; the post also walks through the five most-reported Get data problems and the work under way to address them.

Data Modeling

  • Power BI Agentic Plugins to Build Semantic Models | Kelly Broekstra | Auckland User Group Recording A recording of Kelly Broekstra's session for the Auckland Fabric, Power BI and Analytics user group on Power BI agentic plugins: using AI to manage semantic models, write DAX queries and build reports, including how to set up an MCP server and use AI skills for semantic model design. No prior MCP or skills knowledge is assumed.
  • IsAvailableInMDX: not just an Excel setting Turning off IsAvailableInMDX isn't only about Excel. In Import models it removes the attribute hierarchy, which saves memory but can slow DAX queries that filter or group by that column, so keep it on for such columns and test it off only for aggregation-only columns. Direct Lake uses its column dictionary instead, so the setting there mainly controls Excel/MDX field availability.
  • Use Column Splitting to optimise Power BI semantic models Splitting a large numeric column vertically into smaller, more repetitive pieces, then recombining them in a DAX measure, can reduce model memory, speed up Import processing or Direct Lake paging, and make DAX queries faster. It works best for SUM-style aggregations on large fact tables (not distinct counts), requires changes to data preparation and measures, and should be tested carefully.
  • Inside DAXBench v2: Results and Your Questions A recording of the 4 November webinar in which Marco Russo and Maxim Anatsko explain how they built version 2 of DAXBench, the public leaderboard testing AI models on DAX tasks run against prepared Power BI models, discuss the results and answer attendees' questions.
  • Optimizing DAX with AI Using an unusual 'repeat purchase sales' measure that AI is unlikely to have seen before, SQLBI compares a baseline AI-generated formula, a human-optimised version, an AI refinement of the human version and an independent AI optimisation. The AI-refined human version performed best overall, supporting the argument that AI optimises DAX well but produces better results when a human guides it.
  • [SimplePBI] Get Tables, Measures, Columns, or Roles info using PBI Rest API and Python Version 1.0.4 of the SimplePBI Python library for the Power BI REST API can retrieve the tables, measures (with their DAX expressions), columns, RLS roles, relationships and partitions of a published semantic model, which helps when supporting or documenting models you didn't build.
  • How your lakehouse design decisions affect Direct Lake performance The article shows how Direct Lake performance depends on design choices like file count, row group size, V-Order, and partitioning, affecting cold query times from 0.8 to 14 seconds for Delta tables with 500 million rows, while warm queries stay under half a second once data is in memory.
  • Microsoft 365 Copilot And Power BI: The Easiest Way To Chat With Your Data Chris Webb's advice for organisations starting to let users 'chat with their data': begin with the now-GA integration between M365 Copilot (and Cowork) and Power BI semantic models rather than Data Agents or Ontologies. It reuses the business logic and AI prep (synonyms, AI instructions) already in your models, puts questions where users already work, and can be very cost effective if you already have M365 Copilot licences.
  • Quickly publish large Power BI reports by deleting their data Deleting the cache.abf file in a Power BI project’s semantic model folder removes all data, dramatically reducing file size and speeding up publishing times without affecting model metadata.

Report Authoring and Interactivity

  • Fabric Capacity Smoothing: Why This Morning’s Job Is Slowing This Afternoon’s Reports Why reports can crawl at 2pm on a quiet capacity: Fabric smooths background operations such as semantic model refreshes over 24 hours, so a 6am refresh keeps consuming a share of every timepoint long after it finishes. The post works through an F8 example, the throttling stages (interactive delay, interactive rejection, background rejection), burndown, where to look in the Capacity Metrics app, and practical tips.
  • Interactive UIs in Semantic Link Labs Semantic Link Labs now offers interactive UIs, each opened with a single function call in a Fabric notebook: Vertipaq Analyzer, Delta Analyzer, Lineage View (find and repair broken references in downstream reports), unused-object detection, a Direct Lake migration wizard, Refresh Manager and a Perspective Editor. The underlying functions still return dataframes for automation.
  • Copilot on the Power BI Report Canvas vs. Modern Report Builder The second post in a three-part series compares Copilot on the Power BI report canvas, which creates and edits native Power BI reports, with Modern Report Builder, which builds custom analytical applications on Fabric Apps. Serra's recommendation: use a native report when it meets the requirements, and only take on the extra responsibility of a custom app when the actions, state and workflows justify it.
  • L’IA peut construire vos rapports Power BI… de A à Z (Partie 2) [French] The second article in a series on AI and Power BI moves from introducing the PBIP format (a report saved as text files that AI can read and write) to practice, demonstrating how Claude (on a Pro licence) can build a Power BI report from start to finish.
  • How to Build a Dumbbell Chart in Power BI (Native Visuals Only) Valerie Junk shows how to build a dumbbell chart for before-and-after comparisons using only native visuals: a clustered bar chart with invisible bars, with error bars drawing the connecting line and dots.
  • The Results Are In! Meet the Winners of the 2026 Halloween DataViz Contest! This Halloween DataViz Contest, co-created by KarinSzilagyi with a custom judging app, celebrated standout entries from Valerie Junk’s relatable “Lost & Found” poster and Lucy Parkinson’s innovative time-based analysis, showcasing the power of community collaboration in data storytelling.
  • Power BI Gantt Chart: The New (Preview) Native Visual (Full Tutorial) A full tutorial on the new native Gantt chart visual (preview) in Power BI, covering setup, building the chart, customising it, and suggested improvements, with a downloadable demo file.
  • Building Inclusive Fabric Apps: Who’s Responsible? In Power BI, Microsoft manages the canvas's keyboard, focus and screen reader support; with Fabric Apps that responsibility moves into code written by an agent from someone's prompt. Juliana Smith sets out who is responsible for what, the WCAG requirements to prompt for and check, and shares an agent skill that builds accessibility requirements into a coding agent's instructions.

Deployment, Security and Operations

  • PBIP and Git: Six things every Power BI developer should practise Arguing that confidence matters more than tooling when teams adopt Git with PBIP, Dániel Gábor Patkós sets out six things to practise in a safe repo: setup (keeping data out of the repo, avoiding OneDrive and long paths), branching and merging, handling conflicts (including ones Git can't detect, such as a renamed column breaking a measure), collaborating through pull requests and clear commit messages, promoting selected changes across dev, UAT and prod with cherry-picking, and recovering from mistakes. Each links to scenarios in a practice repository.
  • Can you Stomach Data Governance? - Ep.577 - Power BI tips Mike and Tommy take on data governance: whether a Power BI or Fabric rollout can succeed without it, why leadership buy-in makes or breaks the effort, and whether AI agents could finally help teams get governance right.
  • Canada stops falling back tomorrow. Fabric and Power BI don’t have the new time zones yet From 1 November most of British Columbia, Alberta and Manitoba stop turning their clocks back, but Microsoft says the new time zones aren't yet available in Fabric and the Power BI service, so schedules on the old zones can run an hour off. The suggested workaround is to use the Arizona time zone.
  • UpdateDatasources – Updating Connections in a Semantic Model Using PowerShell UpdateDatasources shows how to use a PowerShell script and Power BI's REST API to programmatically modify data source connections in a semantic model for smooth transitions like moving from a test database to production.
  • Power BI reports support OAP exceptions for semantic models in separate workspaces (Preview) Power BI reports can now query semantic models in separate workspaces with administrator-approved OAP exceptions, preserving workspace separation while maintaining outbound data protection boundaries.

General

Get Power BI Weekly in your inbox every Friday

Sign up to receive the email every week and keep on top of all the announcements.

Don't forget to confirm your subscription. We have a double opt-in sign up process to prevent spam.

We will never provide your details to any third parties. We don't spam.

Power BI Weekly Logo