This blog post covers the latest updates for Power BI Developers community. Don’t forget to check out the August blog post, if you haven’t done so already.
Embedded analytics
Here is the list of August updates for Embedded Analytics…
Power BI Embedded in Azure
Capacity Monitoring App for Power BI Embedded in Azure
Embed capabilities
Advanced URL filtering capabilities
Automation & life-cycle management
Update connection between Cloud & On-Premise data sources
Row-Level Security- “username” property supports ASCII characters
Power BI Embedded in Azure
Capacity Monitoring App for Power BI Embedded in Azure
Power BI has released a new capacity monitoring app, that helps you make more informed and data-driven decisions when managing your Power BI Embedded capacity (thought if offers valuable info for both Power BI Premium and Power BI Embedded capacities). You can drill down to see specific metrics on workspace and dataset level. You can also see refresh data to track if memory in the capacity is enough for running refreshes, if there are specific datasets that are problematic, or if scaling is needed in specific hours. Learn more on how to use the new monitoring app.
The App is available for capacity admins by downloading it to your workspace through this link. Please note that Azure capacity admins need to add permissions prior to installing the monitoring app to be able to use it for Power BI Embedded capacities.
Embed capabilities
Advanced URL filtering capabilities
Developers can define more filters with more complex definitions and operators with new URL filtering capabilities for reports. URL filtering helps developers open pre-filtered reports without the need to use JS API. Adding the query string parameters to the embed URL of the report is supported when you securely embed reports in your own custom application. Here is an example of how to build a URL for embedding with advanced filtering capabilties (based on the example in this blog post)-
URL?$filter=Store/Territory eq 'NC' and Store/Chain eq 'Fashions Direct'
Make sure to use this sample that includes the '$' for embedding URLs. Learn more on how to use the query string parameters.
Automation & life-cycle management
Update connection between cloud & on-premises data sources
‘Update datasources’ API enables you to change the connection details between different data sources programmatically.
Following customer asks, we have removed the limitation of updating the connection from Cloud to On-Premises databases (or vice versa). Now, once the dataset and reports are ready to go live, you only need to change the datasource connection to point to the production datasource (either cloud or on-prem), regardless of the previous connection type.
This helps with app life-cycle management, when your dev or staging environment is on-prem, but your production data source is in Azure for example.
Make sure you remember to set credentials for the new data source as well, as part of updating the connection.
Row-Level Security- “username” property supports ASCII characters
When integrating Power BI Embedded into your application, the common way to use row-level security dynamically is to configure a role on the dataset, using Power BI Desktop, that uses ‘USERNAME()’ function to pass a parameter on the embed token.
Though called ‘username’, you can pass any value on this field, such as country, branch, machine ID etc. The caveat was that this field, originally designed for users in Power BI, was limited to UPN values, which limited the use cases for many customers, or required adjusting the data itself in the ETL process.
Now we are happy to announce that we have removed this limitation, allowing you to pass any ASCII characters in this field. There is no need to adjust the data, and you can also concatenate multiple values through this field easily and using DAX to parse and filter multiple values dynamically.
Learn more on using RLS for embedding.
What’s still puzzling
Answers to some of the frequently asked questions in the Power BI Embedded developer community.
Q: My report takes long time to render. What quick steps can I take to get some improvement of the loading time?
Improving the loading time of reports and dashboards is something in which we invest a lot of time & resources. Here are some steps you can take to get better load time for your users when consuming reports and dashboards in your application:
- To enjoy the recent enhancements, install the latest powerbi-client SDK version. We will release more enhancement in the next months, so make sure to follow-up from time to time. Packages to install:
a. Npm package- powerbi-client
b. Nuget package
- Make sure you get the Embed URL by calling ‘Get Reports’ or ‘Get dashboards’ API. We added a new parameter to the URL called config, used for performance improvements.
- Implement the ‘Preload’ JavaScript API to improve the end-user perceived performance, by preloading parts of the embedded object up-front, making it load faster in front of the user’s eyes.
It’s also important to remember that loading time mainly depends on elements relevant to the report and data itself, such as number of visuals, size of data and complexity of the queries and calculated measures. Please follow best practices document to improve the report’s loading time.
If you are puzzled or run into few issues, be sure to check our resources that can help you get by:
- ‘Troubleshooting’ doc to help you get by all the obstacles on your way for building a great app.
- FAQ doc to answer all your question regarding the Product, licensing and Azure capacities.
- Community forum for developers, to seek answers or ask any other questions you have.
Custom Visuals
New Beta version of powerbi-visual-tools
We are pleased to announce Beta release of powerbi-visuals-tools v3.
This Beta release brings a lot of new features for Custom Visuals development experience.
With new Typescript v3 and ES6 modules support, users are able to integrate modern versions of all popular libraries like D3 V5 or others.
What’s new in beta?
- TypeScript v3.0.1 by default.
- ES6 Modules supported.
- New versions of D3v5 and other external libraries are supported.
- Reduced package size.
- Improved API performance.
- and many more.
How to start using new Beta?
Check out the powerbi-visuals-tools v3 migration guide.
For any question and help please contact pbicvsupport@microsoft.com
Support for ES6
Power BI visual tools 3.0.x brings modern ES6 modules into TypeScript code. The new tools are backward compatible so you can keep your source code as is. In order to use new version of libraries like D3v5 some changes are required, please check this article for the full migration guide.
Do you need some examples?
Please check these visuals that were already migrated to ES6 and converted to use Webpack.
MekkoChart, RadarChart and LineDotChart
Great news for R custom visuals developers!
Dozens of visuals from this stunning gallery of html widgets are ready to become your next custom visual. To make it easier, we created this single custom visual project:
It contains more than 20 interactive HTML visuals!!!
As always, feel free to use all the communication channels at your disposal to connect with our team, share your thoughts and ask questions:
- Community
- Contact us for support- pbicvsupport@microsoft.com
That’s all for this post. We hope you found it useful. Please continue sending us your feedback, it’s very important for us. Have an amazing feature in mind? please share it or vote in our Power BI Embedded Ideas forum, or our Custom Visuals Ideas forum.