Question

I have asked a similar question about PowerView/PowerPivot, but I have not gotten an answer, and through further research, I'm starting to think I can't get done what I want to get done using PowerView. Since it would make sense also to look forward and be ready for a move to O365, I'm now trying to figure out if it's possible to do using Power BI.

Here's the situation:

  • SharePoint 2016 on-prem.
  • I have a web part that makes some calculations and saves the results to a custom SharePoint list.
  • The web part and list are easily deployable to multiple sites, and they need to be, because several different projects need to make these calculations on their own data, and save their results separate from anyone else's results. For instance, Project AAA gets their own site https://my-sp-on-prem/sites/site-aaa. They add the web part to the home page and add the list. The web part will automatically look to save its results in https://my-sp-on-prem/sites/site-aaa/lists/my-results-list. This is due to the fact that the web part is written in JavaScript, and I can therefore code the relative URL /_api/web/lists/getbytitle('my-results-list') combined with _spPageContextInfo.webAbsoluteUrl to save data using REST.

All of the various projects using this web part and results list need to generate the same charts/graphs based on the data in the results list. So what I'm trying to do is figure out how to create a report with the correct charts/graphs already set up, using a SharePoint list as a data source (the field names will all be the same since they are all using my custom list definition), but set it up in a way that if I embed the report somewhere on /sites/site-aaa, it will automatically know to look for the /sites/site-aaa/lists/my-results-list as the data source.

And I say "embed the report somewhere" somewhat vaguely because I don't know how Power BI works exactly. I'd like my users to be able to click a link in the quick launch, and go to a page in their SharePoint site that has the report right there. I have read that with PowerView, you can store the PowerView report document in a document library, put a Page Viewer web part on a page, and point it at the report document.

Can something similar be done with Power BI? I've also read that there's something called the "Power BI report web part", but apparently that requires modern pages, and I don't have modern pages in SP2016 on-prem.

So, is it possible to somehow:

  • Create a Power BI report that uses a SharePoint list as a data source. (In one way or another - I also understand that Power BI can use an OData feed as a data source, and I have no problems using the REST API or even the old ListData.svc if that would make this all possible.)
  • Show that report embedded somehow in a SharePoint site.
  • Have the report look for the data source list on the same site it is embedded on.
  • Have the process to embed the report on the site be very easy, like activating a SharePoint feature, or maybe adding some web part to a page and pointing it at the report.

If all that is possible, then what Power BI product(s) will I need to get, and what will the licensing look like for that?

Do I need to get Power BI Server? (I've read that that's what you need to "publish" a Power BI report on-prem.) Is that a single license for the "server" product? Will there also be user CALs for all the users viewing the reports on their SharePoint sites?

Was it helpful?

Solution

Create a Power BI report that uses a SharePoint list as a data source

Yes, you can get SharePoint List / Library data using

  • OData Feed.
  • SharePoint List as a direct data source connection

For more details, check POWER BI: READ DATA FROM SHAREPOINT LIST


Show that the report embedded somehow in a SharePoint site.

There is no a Power BI web part in SharePoint 2016 On-Prem, it only available in SharePoint Online, maybe will be available in SharePoint 2019 Modern sites.

So you should use

  • the traditional Page viewer web part to show it. or
  • show it in a new tab without a toolbar.

Have the report look for the data source list on the same site it is embedded on.

This is will be specified manually based on your requirements.

When adding SharePoint List connection, it will ask you to provide the List path.


Have the process to embed the report on the site be very easy, like activating a SharePoint feature, or maybe adding some web part to a page and pointing it at the report.

There is no any relation between the SharePoint OnPrem and Power BI, it does not work like SSRS integrated mode.

So no Application service to be configured or feature to be activated.


Do I need to get Power BI Server?

Yes, you should Install and Configure Power BI Report Server, you can do that on the WFE SharePoint Servers or an independent Power BI Report Server.

For more details, check Install and Configure Power BI Report Server


what will the licensing look like for that?

Unlike the SSRS (SQL Server Reporting Service), the Power BI Report Server license is not bundled with the SQL Server License.

The Power BI Report Server license has an independent license that is included in the Power BI Premium.

For more details, check Install and Configure Power BI Report Server

Licensed under: CC-BY-SA with attribution
Not affiliated with sharepoint.stackexchange
scroll top