Recently, I’ve published a new version of the Model Documenter. With that, version 2.1.0 went live. I always try to keep the FAQ up to date and add sections describing typical questions and use cases. However, sometimes it is just easier to write a blog about it to reach a bigger audience, or even record a short video.
In this post, I will further elaborate on connecting the Power BI Model Documenter to existing Power BI Datasets that live in the Power BI Service.
Connecting to existing models, why?
In some scenarios, it can happen that you do not even have a Power BI desktop data model. For example, when you migrated from Analysis Services to Power BI Premium, or in case you have to deal with large datasets and it is directly developed using Visual Studio, Tabular Editor or any other tool of your preference and deployed over the XMLA endpoint. Similar setup could be that you once enriched your data model using Tabular Editor or ALM Toolkit, which resulted in the fact that your Power BI Desktop file, is no longer your golden version of your data model.
Another scenario could be gaining an overview of partitioning when using incremental refresh. The partitions of Incremental Refresh are only generated in the Power BI Service. So, including this information in your generated documentation is only possible when you connect directly to the Power BI Service.
But what if you still want to show a complete view of your Power BI data model, and extract insights using the Power BI Model Documenter? I can tell you; it is possible!
Where to start?
It all starts with the requirement of Power BI Premium. You do need Power BI Premium in order to get this working. In case your scenario is that you made changes over XMLA, you have Premium anyway. Whether you have Power BI Premium per User, or a full-blown Premium Capacity doesn’t matter. Key is that your capacity has XMLA-Read permissions enabled at least. Obviously, Read and Write permissions are fine too.
Below, I described the steps to take.
- Go to your dataset in the Power BI Service.
- Navigate to the Power BI Dataset Settings of the dataset you want to connect.
- Copy the XMLA connection string from the server settings. (you need sufficient permissions on workspace level to see these details).
- Open a new Power BI Desktop session.
- Choose the Analysis Services connector, just like you’re about to connect to (A)AS.
- In the Server paste the server endpoint as you’ve copied in step 3.
- In the Database property, fill the dataset name. You can copy this from the server connection.
- Make sure you remove the section “;initial catalog=” section from the server address.
- Choose the connection mode “Connect live” as there is no reason to import the data.
- In the authentication dialog, connect with the same account as you’ve used in step 1-3 to fetch the server details.
- You might get prompted to select the entire model, or only select a perspective in case you’re having any perspectives in your model.
- Once you’re connected, navigate to the External Tools ribbon in the Power BI Service, and run the Model Documenter as you usually do.
- During execution of the Model Documenter, you might get prompted to re-authenticate again. Use the same credentials as used in step 1-3 + 11.
To make it easier to follow all steps, I’ve experimented to record a video for you as a step-by-step guide. Please bear with me, as it is my first video that I posted on YouTube 🙂
Above steps do not only apply to existing Power BI data models, but obviously exactly the same approach is applicable for (Azure) Analysis Services models.
I hope you enjoy using the Power BI Model Documenter. In case you’re running into any issues, or find any potential improvement areas, please let me know by raising an issue on GitHub. I’ll do my utmost best to help at my earliest convenience.