Skip to main content

Power BI Best Practices - Part Two

Overview
In this article, we will talk about best practices to be considered while we are working with Power BI report development. I have divided the best practices into the following three parts. This is the second article in this series.
Please visit my other articles of this series using the following URL.
During the entire series of the best practices, we have covered the following concepts.
  • Best Practices for Power BI (. PBIX) file preparation (Part – 1)
  • Best Practices for Power BI (. PBIX) Properties (Part – 1)
  • Best Practices to use Query Editors (Part – 1)
  • Best Practices for Tables and Relationship (Part – 2)
  • Best Practices for creating Calculated Columns, measures, and Fields (Part – 2)
  • Best Practices for Data Analytical Expressions (Part – 2)
  • How to make Documentation within PBIX file (Part – 3)
  • Best Practices for Power BI Report Design (Part – 3)
In this article, we will talk about the following three concepts for the best practices.
  • Best Practices for Tables and Relationship
  • Best Practices for creating Calculated Columns, Measures, and Fields
  • Best Practices for Data Analytical Expressions
Let’s get started!
Best Practices to use Query Editors
  • Choose Proper Data Connectivity Mode
    • Before we start to prepare the report, we need to think about Import and DirectQuery Mode to load the data.
    • Choose the DirectQuery Mode if you want live data connection with your database. Choose the Import mode if you need to refresh on daily basis.
  • Import the Minimum number of Columns
    • Import only the columns which are needed.
    • Remove the unnecessary columns which are not used to represent the graphs.
  • Retrieve Source Data from a Database View
    • It’s also recommended to consume the data from Database view instead of a table because Views can have a clustered index assigned and, when they do, they'll store temporary results that can speed up resulting queries.
Best Practices for creating Calculated Columns, measures, and Fields
  • Use Unique Field Name across the entire Dataset.
    • Use unique dataset field names for the dataset.
  • Hide fields which are not utilized for reporting.
    • Hide the fields which are not used directly but used only as a part of the calculation.
  • Use Friendly Names for Fields.
    • Use friendly names for the field names which is to be easily understable to the end-user.
  • Format all numbers and date fields
    • If we format the numeric and date fields, it provides us some OOTB summarization which is very useful to display the data.
    • If we convert the field as Date, it will automatically provide us Date Hierarchy.
  • Specify Sorting for Columns
    • Use sort order column, if we need default sort on some specific columns.
  • Create Useful Calculated Columns and Measures
    • Whenever we need to perform any calculation based on already available fields, we can create calculated columns or measures as per the requirement.
  • Set the Data Category
    • This is similar to “Format all number and Date fields”. For example, suppose, we have fields like city, state, and zip, we need to set the data categories, so that Geo Coding data can be displayed properly.
Best Practices for Data Analytical Expressions
  • Apply the Most Selective Condition on Inner Functions
    • In DAX, if we have used the nested function, then it will evaluate inner function first.
    • For performance optimization purposes, the most selective condition should typically be nested to limit data as early as possible.
  • Use Error Messaging in DAX
    • User ERROR() function to handle the errors.
    • Error handling helps users from getting frustrated should something go wrong with the report display.
  • Consider Using the Divide() Function
    • We recommend to use Divide() function instead of Colum A/Column B in any future report.
  • Use Variables as a Common Practice
    • If we have a complex DAX expression to derive the end result, we recommend using multiple variables to store the result and use it in the final result.
    • Use of variables should be done in an effective manner.
Conclusion
This is how we recommend the best practice to prepare the PowerBI report. Hope you love this article. Stay connected with me for more amazing articles!

Comments

Popular posts from this blog

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. ...

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) ...

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. ...