You’ve learned previously about some of the methods of sharing content in Power BI, such as Workspaces, and Dashboard Sharing, Publish To Web, and Content Pack. In this post, I’ll explain everything about new Power BI Apps; a mechanism to share the content in Power BI in a way that has security and governance together. If you want to learn more about Power BI; Read Power BI book from Rookie to Rock Star.
Power BI Sharing Methods
Till now there were about six methods of sharing content in Power BI, including:
- Simple Dashboard Sharing
- Publish To Web
- Embed in SharePoint Online
- Power BI Embedded
- Power BI Workspaces
- Power BI Content Packs
I have written about some of these already (follow links above) and will write about the rest soon. Yesterday, Microsoft announced preview version of Power BI Apps, which is a new method of sharing. Power BI app is an enhancement version of two methods previously: Workspaces, and Content Packs together!
Power BI App
Power BI App is a way of sharing content with end users. You already know about the limitations of Dashboard Sharing and Workspace sharing. Power BI app method is providing an extensive approach to sharing content for end users. With Power BI apps, you can share content with end users, without the worry to change something in the development environment. Managing multiple environments is much easier with this approach. An app can be shared with a group of people or the entire organization.
To start creating an app, you’ll need a workspace. The reason that workspaces in Power BI are called App workspace is that you can create an app on top of a workspace. The content that you will have in this workspace can be selected for the App to be shared with users. In the previous post, you’ve learned how to create an manage workspaces.
App work pace is like a folder that is shared with a group of people. Set a name for the app workspace. You can specify if users have access to this workspace via edit or read-only. Please note that this way of access is only for people that you add them to the group directly, not for users of this App.
After creating the app workspace, you should see a new workspace (folder) which is blank at first
Publish Content to App
For publishing content to the app, just simply publish it to the app workspace. Open Power BI Desktop, go to Publish and select the app workspace created.
After publishing content into the new app workspace, you should be able to publish App from there.
You can easily publish an app from the app workspace. Just click on the workspace, and then from the list of dashboards, and reports, select any item you wanted to be included in the app in the “included in app” column.
Then at the top right-hand side, select Publish App.
Set a description and color for the app. You can also see how many reports, dashboards, workbooks, and data sets are part of this app.
In the next tab, you will see the content. And you are also able to select the landing page for the Power BI App! Ability to set the landing page is a very good feature that we haven’t had before. Now with Power BI Apps, you can set a landing page for people in the group.
You can also set group of people that you want the app to be shared with (entire organization or specific groups) and then click on Finish.
After publishing the app, users will be able to access it immediately. However, you can share the link with them to make it easier for them to access;
Users can go to their Power BI account page and click on Apps, and then Get Apps. They will be able to see all apps shared with them.
Users can simply Get the app, and use it right away.
by clicking on the app, users simply will be redirected to the landing page (if specified) and can explore the content in the app.
Changes in the App
You can apply any changes you want to the content in the app workspace. The changes on workspace will NOT affect users until you “update app”. With the new update, they will get the updated content. You can also “Unpublish” the app.
Isolated Environments for Developers and Users
One of the most useful advantages of using Power BI apps is the ability to have two separate environments; for Developers, and for Users. The concept works merely based on the fact that a Power BI app is always associated with a workspace. Workspace acts like a developer environment, and Power BI app serves as an end user environment.
Workspaces are developer environments, and Power BI Apps are end-user environments.
If you are a member of developer team, you would have Edit access to the workspace, and this can be done easily in the workspace configuration with adding members with Edit access:
All users who have edit access can change the content in the workspace. Their changes do not apply to the end user environment until they Update the app.
Changes in a workspace does not affect to end users environment until the app is Updated.
If as a developer, you make some changes in the workspace, for example, if you remove a chart from a report, and then save it.
The end user will not be affected by this change. End users will still see the full report.
To sync the Developer and End user environment, you need to update the app to get the changes applied to the end user side;
What About Data Refresh?
Data refresh and access to up-to-date data, is always a big question that comes through my presentations; Would I need to update the app, so end users get the updated data? How would they access the data refreshed or up-to-date? The answer is that data will be updated, if it is scheduled to refresh with a scheduling process determined at the dataset level, or if it is LiveQuery or DirectQuery. Regardless of users or developers, the dataset refresh is a different process.
If you have set up your dataset to be refreshed, then users will always have access to up-to-date data. You don’t need to update the app for data changes. You just need to update the app for structural changes (adding, modifying or removing tables, fields, relationships, calculations), or visualization changes (adding, modifying or removing visuals on the report).
Pros and Cons of Power BI Apps
Advantages of Power BI Apps
Separate Environments for Developer and End user
The most benefit of this method is to have two separate environments; an environment for developers to edit the Power BI content in a collaborative workspace, another environment for end users to consume the report. End users will be able only to view the reports, and developers will be able to make changes.
Power BI App is the best solution to have an Isolated developer and end user environment.
Controlling multiple Power BI content
Similar to the workspace, with Power BI app, you can share multiple dashboards, reports, and datasets at the same time. Controlling multiple contents means less maintenance overhead compared to dashboard sharing which is one dashboard at a time.
Another great benefit of Power BI app is the ability to integrate that with Azure B2B services and provide external sharing. If you want to share Power BI content with people outside of your company, you can do that with a combination of Azure B2B, and Power BI app. Here is the blog post from Microsoft Product team about it:
Cons of Power BI Apps
Power BI App is one of the newest ways of sharing in Power BI, and because of that, it comes with some limitations. This method is a replacement for Power BI Content Packs. However, it still has some flaws, which needs to be resolved.
Power BI Apps is not full replacement of Content Pack
Users cannot Make a Copy as they could in content pack. You might say; what is the benefit of copying? The answer is: Power BI is all about self-service. There are always some users who want to be able to create their version of the report. With Content Pack that was simply possible. They could make a copy, and change their copy without touching the original report. (read this blog post to learn how). With the new app; they cannot change anything. They cannot make a copy. Or if they are part of the group with edit access to the workspace, then they CAN CHANGE the original! It is either too much power for them or nothing.
Immediate need for the app workspace administrator
Users who are not the admin of the group, but only have Edit access, can publish app! Updating or publishing app is too much access. Consider a situation that users are using a published app, and suddenly someone by mistake updates the app! It is critical that the admin of app workspace be the only person who can publish the app. Or at least can give this permission to a specific group of people.
Changes in the Dataset Applies immediately
Power BI app is separating developer and end-user environments, and the changes in a report in a workspace don’t affect the end user until you update the app. However, this functionality doesn’t work with the dataset in that way. Power BI app and the workspace are sharing same datasets, so any changes on the schedule refresh or structural changes will apply on both.
My Thoughts on Power BI Apps
Power BI Apps comes to replace content pack and workspaces with one better solution, and it is very promising. With this new combination, you will have the power of both; You can use workspaces to group the content and give edit access to your power users. And you can also use the content pack to share the content with the end users.
Power BI App is a very new feature, and many updates will come for this shortly, including;
- Disassociating from Office 365 groups.
- Push app to uses without the need for them to install (get) it.
- Copying content between workspaces.
Above list is based on what Power BI team’s blog post mentioned as the roadmap for Power BI apps. These are critical needs for Power BI Apps in my opinion. And I believe Microsoft Power BI Team will consider them and implement them quickly (as they’ve done already with many other suggestions of the community). What is your opinion about it? Do you think Apps would have been much better with some other features? name it in the comments area.