power bi
44612 TopicsIncremental refresh - deletion
as per my understanding the "Detect data changes" option will only compare the last refreshed date with maximum of modifieddate in the incremental period selected which is 3 days as shown below higlighted and it does not check same for the historical partition which is 2 months window from 1st Aug 2026 to 24th Oct 2026 hence it can only refresh only records lies between 25th Oct 2026 and 27th Oct 2026 and can never refresh records between 1st Aug 2026 to 24th Oct 2026 even if there is a modification happen between 1st Aug 2026 to 24th Oct 2026, is this understanding correct?23Views0likes2CommentsEnforcing OneLake Security on external semantic model API calls without adding security risks
Problem External applications cannot query Fabric semantic models on a user’s behalf - with OneLake RLS security rules enforced - unless the Fabric API is exposed to any and every client an authorized user might decide to install and try out. Ungoverned API access is a security risk: users might unwittingly funnel data to an unapproved AI service or install a compromised open-source tool that exfiltrates it. Organizations must accept this risk to enforce OneLake security on semantic model calls from external applications. This practical limitation keeps OneLake security from delivering on its “define once, enforce everywhere” promise. Details The “Semantic Model Execute Queries REST API” tenant setting is scoped by identity only. If an application needs to query a semantic model for its users, every user must be granted API access. There is no way to say "you can use the API to get data from Fabric, but only through this application" - users may connect to Fabric using any external system they choose. Every other method of enforcing access restrictions (passing in effectiveUserName or impersonatedUserName in a service principal call) breaks onelake security. Current workarounds and security solutions fail: A service principal with impersonatedUserName does not pass the user’s Entra identity to OneLake. An Entra user as a service account for impersonatedUserName passes the wrong Entra identity to Onelake, and additionally it is an anti-pattern that depends on interactive sign-in which is not suitable for enterprise applications. Some features (Private link, IP allow-lists, Azure API management, conditional access) can be configured to limit access to Fabric, but any setting that sufficiently restricts API access also negatively impacts portal access and/or functionality. For example - email distribution and on-premises data gateways are not compatible with tenant private links, etc. See forum thread for detailed discussion: Controlled "Semantic Model Execute Queries" REST API Access for Fabric Users | Microsoft Fabric Community Request Provide a supported way for an application to query a semantic model on behalf of a user such that: Authorization to call the API is granted to the application, not to its users. Data access is evaluated as the end user, using their real Entra identity, so OneLake security and SSO Direct Lake apply the same permissions they would in the portal. The user cannot call the API from other clients unless they have been separately granted access. How this is implemented — an OBO flow, a delegated token, a new tenant setting, or something else — is Microsoft’s call. The requirement is that the application is the authorized caller and the user is the effective identity.17Views0likes0CommentsURGENT: Power BI Custom Visual Loading Issues – Production Impact
Hi everyone, We're experiencing a critical performance issue in our production environment involving our own custom datepicker visual, which opens a modal for users to select date filters. Starting today, the modal has intermittently taken up to 47 seconds to open, significantly impacting our customers' experience and the usability of our application. After investigating the browser's Network tab, we identified significant delays when loading the following Power BI-hosted scripts: https://app.powerbi.com/13.0.28520.307/scripts/visualsandbox.minimal.externals.min.js https://app.powerbi.com/13.0.28520.307/scripts/customVisualsHost.min.js These URLs can be accessed directly to reproduce and investigate the issue. To further investigate, we ran 10 requests using curl, outside the browser, directly against customVisualsHost.min.js. All requests returned HTTP 200, but response times varied significantly: HTTP: 200 | Connect: 0.059s | TLS: 0.088s | TTFB: 30.889s | Total: 30.975s HTTP: 200 | Connect: 0.036s | TLS: 0.066s | TTFB: 12.995s | Total: 21.890s HTTP: 200 | Connect: 0.024s | TLS: 0.060s | TTFB: 3.858s | Total: 5.172s HTTP: 200 | Connect: 0.015s | TLS: 0.059s | TTFB: 12.038s | Total: 12.122s HTTP: 200 | Connect: 0.030s | TLS: 0.066s | TTFB: 46.953s | Total: 47.042s HTTP: 200 | Connect: 0.076s | TLS: 0.116s | TTFB: 5.049s | Total: 5.139s HTTP: 200 | Connect: 0.018s | TLS: 0.052s | TTFB: 7.914s | Total: 8.482s HTTP: 200 | Connect: 0.020s | TLS: 0.069s | TTFB: 1.618s | Total: 10.675s HTTP: 200 | Connect: 0.016s | TLS: 0.052s | TTFB: 0.576s | Total: 1.572s HTTP: 200 | Connect: 0.019s | TLS: 0.061s | TTFB: 0.087s | Total: 0.173s Connection and TLS times remained consistently low, while the most significant delays occurred during Time to First Byte (TTFB). We urgently need assistance from the Microsoft Fabric / Power BI team to investigate and resolve this issue, as it is directly impacting our production environment and customers. Thank you!27Views0likes1CommentSplitting Tag data
Hi How do I split columns of tags we have? As an example , one string might be: "Portfolio:Generation 1","Created Date: 01/01/2021","Product:Test1", etc etc and the second string might be: "Created Date: 01/01/2021","Product:Test1","Portfolio:Generation 1", etc etc So in other words I want to split the tags into columns by the name as they may be in different orders on each tag? Is this possible?22Views0likes1CommentPower BI scheduled refresh settings greyed out even though refresh works
Hi everyone, Has anyone experienced an issue where the scheduled refresh settings are completely greyed out in Power BI Service? I noticed this recently, and it is also happening with a brand-new report that I published and own. The semantic model refreshes successfully when I use Refresh now, but I’m unable to turn on or configure the refresh schedule. I also noticed that under Data source credentials, Snowflake shows “Failed to test the connection to your data source. Please retry your credentials.” However, the refresh itself completes successfully and the data is updated. Has anyone faced something similar or knows what could be causing the refresh schedule settings to be unavailable? Thanks!Solved46Views0likes4CommentsDisplay personal bookmarks as a list on the report canvas
I want report viewers to create their own personal bookmarks and access them through a clickable list directly on the report canvas, instead of using the Bookmarks pane. The built-in bookmark navigator only supports report bookmarks, which viewers cannot create. Is there a way to display each user’s personal bookmarks within the report canvas, perhaps through a custom visual or another workaround?63Views2likes7CommentsMatrix Visuals Column Colour Choices
When adding data to the column field in the Matrix visual on either Power BI Desktop or the Power BI Service, it would be helpful if you could change the colours of the columns. It would help a lot with distinguishing data from one set of columns to another - especially when you are drilling down in the column into various measures.5Views0likes0CommentsTooltips suddenly not displaying
I've got a report with lots of tooltips that have always worked in the past. For the last few weeks, they haven't been displaying in the Service, although everything works perfectly in Power BI Desktop. I tried switching from report page tooltips to standard tooltips, but that didn't make a difference. They still work on other reports, just not this one. Does anyone have any idea why?75Views0likes4CommentsFix the RLS issue for inactive relationship and find the missing country Name
Hi All, I am currently working on a report to identify missing Country Names based on the number of Contracts and Vehicle Plate Numbers. The report is subject to Row-Level Security (RLS) implemented on the Country dimension. While troubleshooting the issue, I attempted to activate an inactive relationship using the USERELATIONSHIP() function. However, the user encountered the following error: Underlying Error: QueryUserError More details: The USERELATIONSHIP() and CROSSFILTER() functions are not available in this context. As an alternative approach, I implemented the TREATAS() function to replicate the relationship behavior. However, the end user continues to experience the same issue. The relevant table relationships are as follows: Vehicle[FK_Subsidiary_Code] → Subsidiary[PK_Subsidiary_Code] Contract[FK_Subsidiary_Code] → Subsidiary[PK_Subsidiary_Code] Contract[FK_Vehicle_Code] → Vehicle[PK_Vehicle_Code] Could anyone advise on a possible solution or recommend an alternative approach for handling this scenario within the RLS context? Both Measure are not working TREATAS and USERELATIONSHIP Test = CALCULATE( DISTINCTCOUNT(Contract[PK_Contract_Code]), ALL('Vehicle'), TREATAS (VALUES (Vehicle[FK_Subsidiary_Code]),Subsidiary[Subsidiary_Code])) Test = CALCULATE( DISTINCTCOUNT(Contract[PK_Contract_Code]), USERELATIONSHIP(Contract[FK_Subsidiary_Code],Subsidiary[Subsidiary_Code])) I Can't change the relationship Thanks125Views1like14Comments