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.
Here is the list of August updates for Embedded Analytics...
Power BI Embedded in Azure
Automation & life-cycle management
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.
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. Embed scenarios are supported by adding the query string parameters to the embed URL of the report.
Automation & life-cycle management
‘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.
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.
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.
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.
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 firstname.lastname@example.org
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.
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:
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.