Our use of cookies

We use cookies to tailor your experience, gather analytics, and provide you with live assitance. By clicking "Accept" or continuing to browse our site you agree to the use of cookies. For more details please read our Cookie Policy.

Generate Power BI Charts and Reports from live SharePoint list data

In this blog, I will show you the best way of creating a Power BI chart on live data coming from SharePoint lists. We will start off by looking at the lists which we are going to use for this demo and followed by how we can use SQList to synchronize data between SharePoint Lists and SQL Server database and to finish things off, we will look at how to generate our reports and charts much faster.

Scenario

Create a bar chart in Power BI showing the total price and total current stock of products by Category Group.

If you would rather watch a video, this tutorial is also available on our YouTube channel at: https://youtu.be/MY3Z0PDY1pA

SharePoint Lists

For this demo, we will use three custom lists with some data in SharePoint.

Product list

  • This list contains all the products data.
  • Columns
    • Title (Single Line of Text)
    • Unit Price (Money)
    • Current Stock (Number)
    • Category ID (lookup column linked to category list).

Category List

  • It is a custom list which contains data of all the product categories.
  • Columns
    • Title (Single Line of Text)
    • Category group ID (lookup column linked to Category groups list).

Category Group List

  • It is a custom list which contains data of all the product category groups.
  • Columns
    • Title (Single Line of Text)

Step-1: Create a Database in SQL Server

First off, we need a database that will be used for replicating the data coming from SharePoint lists.

  • Open SQL Server Management Studio and create a new database named “ProductsReportdemo”.

Step-2: Replicate and Synchronize data to Database

Secondly, we need to replicate the data from SharePoint lists into SQL Server database. We will use SQList to achieve that.

  • Open SQList Manager and click on “Create a new replication”.

  • Create a new SharePoint connection, enter the connection name and Table prefix
  • and select the SharePoint site which contains the lists and clicks next.

  • Next step is to select the replication lists, we will select the 3 lists which are going to be used for this exercise i.e. Product, Category and Category Group.

  • Next, enter the details for the destination SQL database connection which is the database we created earlier.

  • Last step is to give this replication a name, and keep the default options as checked and then click finish.
  • Once the replication is created, SQList replication service will start off for synchronizing the SharePoint lists and SQL database.
  • Once the service is started, you will see that some tables have been created in the destination database including the tables for the lists which we selected.

Note: SQList will keep the database in-sync with the SharePoint lists which means any updates made in the lists will be replicated in this database as well.

Step-3: Generate a Chart in Power BI

  • Let’s open up PowerBI.
  • First off, we need to get the three sql tables Product,Category & CategoryGroup into PowerBI data model.
  • Create a Connection to the demo database and then select the tables and then add them in the model using direct query.

  • Next step is to define the relationships between the tables. So, go to Manage relationships and then drag and drop the three tables tables.
  • In order to create a relationship, drag Category ID in Product table to ID in Category table and select the relationship type as Many to One (*:1)
  • Similarly, drag ID in CategoryGroup table to CategoryGroupID in Category table and select the relationship type as Many to One (*:1).

  • Now, the last thing to do is it to create a chart. We will use a simple bar chart.
  • For Label, we will select Title in CategoryGroup table.
  • For Values, we will select the sum of Unit price and Current Stock in Product table. This will generate the chart.

  • Now to test the synchronization, let’s go to SharePoint and add a new item in Products list. Lets add a product of Category “PC & Video Games” and enter 2000 as current stock. Once, you refresh the data in PowerBI Chart you will see that our chart has changed.

Bonus: Optimize your report using SQL View

We can also simplify this process and improve the performance at the same time by using a SQL View instead of the tables to generate the chart.

  • So, Lets go back to the SQL Database and create a view which includes the Product category title, Sum of UnitPrice and Sum of CurrentStock from Product.

  • Now, lets go back to the PowerBI and remove the tables from the relationship manager. Select the SQL database connection and select the view.

  • Again select the Bar chart and select the three fields in the view which will generate the same chart but only faster.

Conclusion

To summarize, today we saw how to generate a Power BI bar chart using SQL database tables which are in synch with SharePoint lists using SQList so the chart reflects live data from SharePoint. We also covered how to speed up the process by using SQL View instead of tables.

Want to know more?

To download a 30 day trial of AxioWorks SQList or book a demo, please visit: /sqlist/

Form information, contact us at info@axioworks.com

Latest articles

What went down at MS Ignite 2021: Power Automate and Power Virtual Agent Edition

14 Jan 2022

When we talk about the biggest annual tech conferences of the year, Microsoft Ignite comes to mind where not only do we get a view of all their […]
[read article]

What went down in MS Ignite 2021 : Power Apps Edition

30 Dec 2021

When we talk about the biggest annual tech conferences of the year, Microsoft Ignite comes to mind where not only do we get a view of all their […]
[read article]

AxioWorks Newsletter December 2021: How has 2021 been for you?

28 Dec 2021

Hello Reader, Welcome to another exciting issue of our monthly Newsletter! Each month, we try our best to bring to you content that is relevant and […]
[read article]

AxioWorks Newsletter November 2021: What has AxioWorks been up to?

03 Dec 2021

Hello Reader, Welcome to another exciting issue of our monthly Newsletter! Each month, we try our best to bring to you content that is relevant and […]
[read article]

What went down in MS Ignite 2021 : Power BI Edition

30 Nov 2021

When we talk about the biggest annual tech conferences of the year, Microsoft Ignite comes to mind where not only we get a view of all their product […]
[read article]

AxioWorks Newsletter October 2021: Focus on customer service and a webinar on its way

01 Nov 2021

Hello Reader, Welcome to another exciting issue of our monthly Newsletter! Each month, we try our best to bring to you content that is relevant and […]
[read article]

Gain valueable Insights into your PowerApps using Application Insights

25 Oct 2021

Power Platform provides a great way for citizen developers to develop Apps using low-code /no-code tools like PowerApps, PowerAutomate, and PowerBI. […]
[read article]

AxioWorks Newsletter September 2021: Focus on our sales effort

18 Oct 2021

Hello Reader, Welcome to another exciting issue of our monthly Newsletter! Each month, we try our best to bring to you content that is relevant and […]
[read article]

Why use SQList to generate Power BI reports from SharePoint lists, rather than using the Power BI native connector to SharePoint?

18 Oct 2021

The main reason is that in practical terms using the native connector only works for small amount of data and simple queries. When you start using it […]
[read article]

SharePoint Online List vs SQL Server as Data Source in Power-BI

15 Sep 2021

Lists are primarily used as a source of data storage in the world of SharePoint and in most scenarios these lists can grow really fast especially if […]
[read article]

Get SharePoint and SQL news to your inbox

Stay up-to-date with industry news and trends, SQL and SharePoint innovations and all the latest from AxioWorks by subscribing to our monthly newsletter.

Subscribe to the AxioWorks newsletter

*