Power BI RoundUp – (Power BI Preview Features in Action – Developer Update for Sept – Webinar on Power Query & M for Calendar Tables)

Welcome to another week of the weekly Power BI RoundUp, I hope you enjoy catching up on the latest content below.

Power BI – Power BI Preview Features in Action

In this blog post by Chuck (Charles) Sterling he goes into details on all the preview features that are going to be shown at the last 3 stops of the Power BI World Tour.

I went to the Sydney event and I thoroughly enjoyed it, I met some new friends, networked and learned a lot.

All the details on what will be shown is available here: See Power BI Preview Features in action at the Power BI World Tour

Power BI – Developer Update for September

As you can see above there were 3 updates this month.

The first being an update to the Capacity Metrics App for Power BI Premium workspaces where you can now not only monitor capacity, refreshes and data loads, but now there is also query metrics which is great to see if there is a long running query or a query that consumes a lot of memory and CPU.

There are now also advanced URL filtering capabilities, which often can be used to either compliment or to extend access to data for specific users or groups of people.

There is a new API where you can update the connection between cloud and on-premise data sources via the API. This is really a great improvement, as often data sources move around and with this API it makes it a lot easier to get this done programmatically.

And finally, Row Level Security now supports ASCII characters in the Username property.

All the details can be found here: Power BI Developer community September update

Power BI – Webinar on using Power Query to create Calendar tables

My friend from France will be presenting a Webinar with Chuck from the Power BI team on using Power Query to create calendar tables.

I have no doubt that this will be a great webinar and I find that there is always something to learn when watching other people, us M.

The Webinar details can be found here: 10/11 Webinar: How to use Power Query and M to create calendar tables with Tristan Malherbe

Power BI – Modifying the Colours in the Options of the Visual Headers

I was recently consulting at a customer and I was looking to better understand if there was a way to disable the exporting of Underlying data, but whilst investigating this I came across the formatting pane and as shown below I could modify the menu in the Options for Visual Headers which I detail below.

The first step is to make sure that you have enabled the “Use the modern visual header with updated styling options” in the settings in Power BI Desktop as shown below.

Next,I clicked on the Visual and went into the Format options for the Visual and searched for Visual Header

This is what it looks like after I have configured the Visual Header settings

And this is how I configured it.

The first thing that I did was to change the Background Colour

I then made the Border Colour the same as the Background Colour, so that it looks like a single colour.

I changed the transparency to 0%, this is so that it will display correctly over other visuals as shown below.

This is what it looks like with the above transparency.

But if I had to change the transparency to 50% this is what it would look like below, which might be confusing to the users interacting with the report and visuals.

The final thing that I did was to update the font colour to better match my visuals.

And once again, this is what it looks like once complete.

One additional thing to note is that I made the Title have the same look and feel by using the same background colour and font for the Title.

If there are any comments or suggestions, they are always most welcome in the section below.

Power BI RoundUp – (Premium Capacity Metrics App – Power BI Home & Global Search)

I have decided to rebrand or change the name of my weekly round up from BI RoundUp to Power BI RoundUp, because it is almost always about Power BI. And with the new direction from Microsoft this makes perfect sense.

As always please find the latest updates below.

Power BI – Premium Capacity Metrics App

This new app is great for people who are using Power BI premium and want to gain a better understanding of how the premium capacity is performing.

It gives you insights into Refreshes of your data, Queries (which is great to see long running queries which could consume resources) and could optionally be optimized) and datasets.

If you are using Power BI Premium this is something I would suggest installing.

Here is the blog post details: Premium Capacity Metrics app – query metrics now available

Power BI Home & Global Search

Power BI Home was seen at the Microsoft Business Applications Summit earlier this year and it is great to finally see it here. I personally think that this is a great place for people to land when logging into Power BI. It is a great start and I know that there are going to be future enchantments to this.

One of the great features is the global search which will allow you to search and find all the related content that you have access to. I find that as more reports, datasets and dashboards are deployed it can become a bit of a challenge to find the report you are looking for. Now with global search this is a lot easier.

More details and more in-depth details can be found here: Introducing Power BI Home & Global Search

That is it for this week, enjoy the rest of your week.

Power BI InfoGraphic Update – Sep 2018

It has been a few months since I have updated my Power BI InfoGraphic and with the speed at which this all changes and updates I have always had a challenge to keep it up to date.

The following items have been added with links to more details:

Please find below the latest version as at September 2018. I always also keep the latest version of the InfoGraphic here: Power BI InfoGraphic Overview

You are welcome to share this infographic with anyone, as long as the author is given credit for the creation.

If there is anything missing or needs to be updated, please leave it in the comments section below.

BI-RoundUp – Power BI (Service & Mobile Update for July & August 2018 – User Research Panel – On-Premise Gateway Update for Sep – Webinar on Power BI Dashboard Comments)

Here is this weekly BI-RoundUp where I will detail what updates there have been in the past week.

Power BI – Service & Mobile Update for July & August 2018

In the past two months there has been a lot of updates to the Power BI Service and the Power BI Mobile App. All the details are below with links as per the blog post.

I am not going to go into any detail, due to it already been covered before, or it is the relevant links below.

DAX – Getting the Start Date of the following Week

I was recently doing some work for a customer where they wanted to compare their date to the start date of the following week. They also had a requirement to persist the data to the dataset.

I thought that this would be a good challenge to use DAX with a calculated column. I most certainly could do this using the Power Query Editor and M, but I always like to see if it is possible when it is a smaller and easier DAX calculation.

Below is the DAX to get the Start date for the following week

'Date'[Date] - WEEKDAY('Date'[Date],2)+8

As you can see below, as each week goes on, I have got the start date for the following week for each day of the current week.

If I wanted to change it and use the starting date of the current week and use it for all dates for the current week, I could change it with the following DAX calculation

'Date'[Date] - WEEKDAY('Date'[Date],2)+1

As always if there are any comments or suggestions please leave them in the comments section below.

BI-RoundUp – Power BI (Sep Update for Power BI Desktop – Dashboard Comments – Community Contribution to PowerShell Cmdlets – Power BI PowerShell Cmdlets available in Azure Cloud Shell)

Welcome to another week of my Power BI Round Up. And as expected there is another massive Power BI Desktop Update.

Power BI – September Update for Power BI Desktop

As always I am going to over the new features and highlight what I think is really relevant in terms of what has been released.

Reporting

With the added support for categorical fields on the X-Axis this now makes the scatter charts more flexible.


As shown above there now is the capability to be able to copy a single value, which will copy the value in its unformatted form, which could be used to put into a search of another application.

Whilst when using the Copy selection feature, it will copy everything that you have highlighted in your table or matrix. And when pasting this, it will keep the column headers as well as the formatting options which you can then paste into Excel or another program. This is really a great piece of functionality which makes it easier when certain data needs to be copied into another system.

There are now some built in report theme’s which are great for those people who just want to move from the default colours, but do not want to create their own custom themes.

Report Page Tooltips are now generally available meaning that you will not have to enable it as a preview feature.

Along with that as shown above there is now report page tooltips available for Cards.

There have also been additional improvements for accessibility in the formatting pane, making it easier to navigate, as well as when using the screen reader there is more support.

Analytics

This is a really big, BIG one having the ability to have aggregated tables in your data model. What this means is that you can have a highly aggregated table of your data which might answer 60 – 70% of the queries. When the queries are run they will use the data in the aggregated table, which in turn results in exceptionally super-fast query response times. And if it does not hit the aggregated table it will then go down to the source table, which could be imported or using Direct Query mode, which means then that the entire data model is actually very small but very fast.

There is a lot more to this, so I suggest reading up the documentation that is included in the blog post. But this is something that I have been waiting for and cannot wait to try it out and get it working.

Finally there is now support for RLS with Q&A, this means if you have had a dataset that has had Row Level Security (RLS) previously you could not use Q&A. This has now been fixed and Q&A is available which is awesome.

Data Connectivity

As shown above there is a new connector where you can connect to PDF files and it will attempt to extract table data from your PDF files.

There is now support for the SAP BW Connector measure properties

There is a new connector called dataflows which will soon be in limited preview which will allow users to connect to an existing data flow.

Data Preparation

As per my first image, and above, there is now Intellisense when going into the Advanced Editor in the Power Query Editor. This is so awesome. There have been so many times in the past when I have not known which M function to use. As well as having syntax errors, and a lot of that pain is now gone with having Intellisense.

The add columns from examples now supports text padding your data, as shown above you can pad the text with zeros for data where you want them all to have the same length.

It is interesting to see that right at the end of the blog post they highlighted that they are working on being able to copy visuals between PBIX files. How cool is that??

You can find all the blog post details here: Power BI Desktop September 2018 Feature Summary

Power BI – Dashboard Comments

This was announced at the Microsoft Business Applications Summit and it is great to see that you now can add comments to Power BI Dashboards, as well as individual tiles on the dashboard.

It is also great that you can tag people in the comments, which will then send an email or send a push notification to the Power BI Android and IOS Mobile App.

At the end of the blog post, they also indicated that this will be coming to the reports, so stay tuned.

You can find all the details here: Announcing Dashboard Comments in Power BI: Your new hub to discuss data and collaborate with others

Power BI – Community Contribution to the PowerShell Cmdlets

This is the first contribution from the Power BI Community which adds to the existing Power BI PowerShell management cmdlets. Where Kenichiro Nakamura has added functionality to work with datasets, tables and columns.

You can find a lot more detail in the blog post: Celebrating our first community contribution to the Power BI management cmdlets

Power BI – PowerShell Cmdlets available in Azure Cloud Shell

What this means is you can now use the Azure Cloud Shell to run the Power BI PowerShell Cmdlets. This also means that there is no need to try install and configure the required PowerShell modules, because this is all maintained in the Azure Cloud Shell.

I would suggest looking into the storage options because depending on how much storage you need, if you have an existing Azure Subscription this could be a very good option.

You can find more details on how the Azure Cloud Shell works, as well as the blog post details here: Power BI Management cmdlets in Azure Cloud Shell

Power BI Default Slicer Selection

I have recently had some discussions with regards on how to enable the default selection of a slicer which will always keep the slicer selection on the current month.

As is currently stands there is no out of the box way to change the slicer on a selection where it shows the actual date for each day. This is because currently you can only have the selection on a value that does not change at every data refresh.

My proposed solution below is to use a fixed value, which does not change each time the data is refreshed.

I always suggest that it is best practise to complete the fixed value in the Power Query Editor. The reason is twofold.

  • Firstly, it is a lot easier to use the Power Query M functions to get the output you require.
  • Second, it allows for better compression into the data model.

As always, I will use the working example below, where I want my slicer to always select the current month.

  • I already have got a date table created, which is another recommendation to have in every data model, and you can refer to my blog post Power BI – How to Easily Create Dynamic Date Table/Dimension with Fiscal Attributes using Power Query which explains how to create the date table.
  • Next, I create the column with Year-Month with the code below, and the reason for this is because there are 12 months that happen over every year, without having the Year and Month combination it will result in multiple “Current Months”
    Number.ToText( [Calendar Year]) & "-" & Number.ToText( [Calendar Month Number])

     

    • And this is what the column looked like.
  • My next column that I created was to get the current Year-Month combination, which I created with the following code below.
    • NOTE: The code below does appear to be quite long, but based on my blog post, I have parameters for the #”Time Offset in Hours”, this is so that I when the data is being refreshed in the Power BI Service, it will then update correctly and show the correct Year-Month combination.
      Number.ToText(Date.Year(DateTimeZone.FixedLocalNow()+ #duration(0,Number.From(#"Time Offset in Hours"),0,0))) & "-" & Number.ToText(Date.Month(Date.From(DateTimeZone.FixedLocalNow()+ #duration(0,Number.From(#"Time Offset in Hours"),0,0))))

       

    • And this is what the column looked like.
  • The final step in my process is to then create a conditional column to compare the two columns above and where they match it will then be the current month, and when it is not, it is another month.
    • Which results in a column which will then give me a fixed value which says “Current Month”
    • And this then allows me to use this in a slicer, so that every time the data is refreshed the fixed value of “Current Month” does not change, but it will move as time moves.
    • As an option I then removed the previous 2 columns that I used because they are no longer needed.

As always, I am sure that there is more than one way to do that, but for me completing it in each step allows me to view and see that it is working as expected. And then to ensure that I am getting the results I expect.

Comments or suggestions are welcome in the section below.

BI-RoundUp – Power BI (New Monitoring Capabilities for Power BI Premium – Developer Update for August – Webinar on New Power BI Tools)

Welcome to another week of the BI-RoundUp.

Power BI – New Monitoring Capabilities for Power BI Premium

As you can see above there now is an App which you can get for Free from the App Source which will get all your capacity metrics which you can then use to better understand how you and your users are using your Power BI Premium Capacity.

There was also an indication that additional metrics will be added such as Long Running Queries and Query Duration, which is great to see if there are particular queries which could be consuming CPU and memory.

If you are using the A SKU’s for Power BI Premium you can also use the above App to analyse your capacity.

All the details can be found here: New monitoring capabilities for Power BI Premium Capacities

Power BI – Developer Update for August

Power BI Embedded in Azure

As you can see above, there are once again a whole host of great improvements to the Power BI Development story.

There is now Multi-Geo support for ISV’s who require their customers data to be located in their specific regions.

Power BI Embedded is now integrated with Azure Diagnostics, which helps with better diagnosis of resource issues and what is the root cause of these issues.

As per the request from a lot of users, there now is the QPU metric available when using Power BI Embedded.

Embed Capabilities

Now you can create a customized error notification for your end users when your App is embedded, so that the users do not get confused when there is an error.

There is now a more detailed and indicative error message when you are developing your app, which should make the entire development experience that much better.

There is now also a new updated Power BI Embedded playground which is more integrated and shows you how to leverage the JavaScript API

And finally, you can now use the Power BI Rest APIs to integrate with the new App Workspace experience, which is great as it moves away from the tight integration with Office 365 groups

All the blog post details can be found here: Power BI Developer community August update

Power BI – Webinar on new Power BI Tools


Seth and Mike will be hosting a webinar with Chuck Sterling from the Microsoft Power BI Team where they will go through their wonderful tools that they have developed on www.powerbi.tips

I use a fair few of their tools, so this will be a great webinar to watch.

Details can be found here: 9/11 Webinar: New Power BI tools and new templates including a walkthrough of Cool Blue and the layout Purple Haze

What runs under the cover when I open Power BI Desktop

I am always interested in what happens under the covers when I open Power BI Desktop. So I did a little digging and I got the inspiration from Macro Russo when he did his Webinar as well as presented at the Queensland Power BI User Group on “My Power BI report is slow: what should I do?”

What happens when I click on Power BI Desktop.exe?

This is the list of associated processes that are opened when Power BI Desktop is started, which I will explain what they are below.

This is what it looks like for me when I am running Windows 10 and I have a look in the Task Manager under Processes

  • CefSharp.BrowserSubprocess
    • Because Power BI Desktop runs in the Power BI Service, which is essentially a website and all the visuals are rendered in a browser.
    • My understanding is that within Power BI Desktop it is simulating how it will run the Power BI Service.
    • As per Marco’s Webinar, if this consumes a lot of memory or CPU this is potentially why your Power BI Report is slow.
  • Console Windows Host
    • UPDATE (06 Sep 2018) – I got a reply from Amanda Cofsky from the Microsoft Power BI team, who said that the Console Windows Host is the “Analysis Services Engine Console Output”, which is generally used by the Microsoft Engineers for debugging purposes.
  • Microsoft Mashup Evaluation Container
    • This is the Power Query Engine.
    • This is responsible for processing all the steps in the Power Query Editor. Which gets data from my sources, transforms it and then loads it into my data model.
    • When I look at a Server where I have got the On-Premise Data Gateway installed I will see a lot of instances of the Microsoft Mashup Evaluation Container running. This is because this is where my data gets loaded and transformed into tables before sending to the Power BI Service.
    • This is the executable which is the starting point and container for all the processes that are run within Power BI Desktop.
    • This is where all the magic happens, it is an analytical data engine which leverages In-Memory technology to achieve incredible compression using the X-Velocity Engine and blazing fast query response times by loading all the data into memory.
    • This is where all the data gets loaded from Power Query into the data model.
    • This process can have the highest memory usage.
    • If I have an expensive DAX measure which must get most of its data from the storage engine I will see an increase in memory utilization and CPU during the evaluation and running of the DAX measure. Which once again as per Marco’s Webinar is a great indicator as to why my Power BI Report is slow.

I hope that this has given you some insights into what runs under the cover in Power BI Desktop and that there are quite a few moving parts that work together seamlessly to make the report creation and development experience so seamless and fast when developing Power BI Reports.

As always if there are any questions or you have more details and insights into the details above, please let me know and I will happily update the details in this blog post.

Thanks for reading!