Skip to main content

Consume Local File System As A Data Source In Power BI

Overview
We all know that Power BI is a very good business intelligence tool. Sometimes, there is a situation when we need to prepare a report using a file system. In this article, we will learn how.
Example
I want to prepare a report for all the available files in one of the specific folders from my local system. I also want to filter the files based on creation and modification dates and their extension.
Power BI provides a connector to consume the data from the folder structure. We can get all files from a specific folder but there is one limitation with this connector; it provides us a list of all files in a flat file structure instead of TreeView structure.
Now, let’s get started.
At the end of the article, you will be able to produce a similar kind of report. You can also download a report from here.
 
Step 1
Open Power BI Desktop.
Step 2
Click on Get Data > File > Folder. Then, click "Connect".

 
Step 3
It asks for local file system path. Click on "Browse" and select the folder for which you want to prepare the Power BI report.

 
In my case, I will select "Downloads" folder from the local file system.

Press OK. It will take some time to grab data from a file system.
Step 4
Now, our data source is ready. We get the following properties for our folder structure.

 
  • Date accessed
  • Date created
  • Date modified
  • Extension
  • Folder Path
  • Name
The below screenshot shows the data for download folder.

 
Step 5
Now, we will set all our visuals. First, let’s add slicer visual to filter the data based on creation date.

 
Note You can format the visual as per your requirement. 
Secondly, let’s add a slicer visual to filter the data based on the date modified.
 
Step 6
I want to show file count by extension. So, I will use the table visual.

 
I have added the following columns to the table.
  • Extension
  • Extension > Right click > count = So It will become Count of Extension.
The table will look like this.
 

 
Step 7
I want to add a file name with description. So, I will use table visual again.

 
I have added the following columns to this table.
  • Name
  • Folder Path
Now, our table will look like this.

 
Step 8
Now, I want to represent the file count by extension in a graphical form with a pie chart. So, I will add a Pie chart and add the following columns.

 
In Legend field, I will add > Extension
In Values field, I will add > Count of Extension
So, my Pie Chart will look like this.

 
When I hover on any visual, it will show the file extension with file count.

 
Example
In this case, it is showing .xml extension is having 274 files in the "downloads" folder.
Step 9
Now, I want to show the total number of files available in a folder. For that, I will use Card from visual library.

 
Select "Name" from the right side, check on it, and check "Count (Distinct)".

 
It will look like this.

 
Step 10 
Now, I want to display the total file count by extension. So, I will use the card.

 

 
Step 11
Now, let’s filter based on file extension. I want to see the list of .pdf files only. I will select .pdf extension from pie chart.
My data is filtered based on the .pdf extension.

 
Step 12
Let’s filter data based on created date and modified date. Drag the slicer or select date from date picker.
Data is filtered based on the selected slicer.

 
Conclusion
This is how we can prepare Power BI report using file system data source.

Comments

Popular posts from this blog

How to partition or split DataTable in C#?

Today we will discuss how we can divide or split a very large data table into fixed size of chunks? Scenario: Suppose there is a data table which has 1000 Rows. When you perform for each loop on data table and read each row at that time it will take too much time. If we devide 1000 Rows datatable into 10 fixed sizes (e.g. 100 Rows) datatable, It will take less time. Let's check how to achieve it. Here is a code. private static List<DataTable> SplitTable(DataTable originalTable, int batchSize) { List<DataTable> tables = new List<DataTable>(); int i = 0; int j = 1; DataTable newDt = originalTable.Clone(); newDt.TableName = "Table_" + j; newDt.Clear(); foreach (DataRow row in originalTable.Rows) { DataRow newRow = newDt.NewRow(); newRow.ItemArray = row.ItemArray; newDt.Rows.Add(newRow); i++; if (i == batchSize) ...

How To Lock Objects In Power BI

Overview Sometimes, there is a situation where when we open a report and click on any visual it accidentally nudges a chart a little bit to the right or left. Sometimes, by mistake when viewing a report, the arrangement of visuals scatters a little bit. Microsoft rolls out one new amazing feature to resolve this issue, that is, Lock Objects in Power BI. Advantages of using this feature When our purpose is to only view a report, this feature is a boon for us. Visualization’s position is not changed. Saves a lot of the developer's time to resolve the position related issues. Note   -  This feature is not saved with the report. So, every time you open a report, you need to enable this feature. Now, let’s understand this feature in a brief manner. To understand this, I will first show you one report in which I have not enabled “Lock Objects” feature. Step 1 The below screenshot shows my report which doesn’t have the enabled Lock Objects feature. ...

Create Event Calendar In Power BI

Overview In this article, we will learn how we can create Event Calendar within Power BI. We have a requirement from many of my clients to show Events within the Calendar by Category Colors. In order to achieve that requirement, we can use the custom visual from the marketplace which is “ Calendar by MAQ Software ”. You can directly download it using   URL . At the end of the article, you are able to create Event Calendar as shown in the following screenshot. We have the following data to be shown in the event Calendar. Event Start Date Event End Date Description Category   For your practice, you can download sample data source file and Power BI file using   GitHub . Let’s get started! Step 1 Import “ Calendar by MAQ Software ” from Marketplace or download using the   URL . Once it is imported we can see the visual in visualization pane. Step 2 Drag the “ Calendar by MAQ Software ” visual and set the following property. ...