Last summer we announced the availability of TeamDesk connector for Power BI Desktop. This was a beta technology – in order to use it you needed to download connector code, place it in some folder and turn on some options Power BI. No longer.

TeamDesk connector for Power BI is now certified by Microsoft and included in Power BI installation package for desktop and Store. No more tweaking – install Power BI and connect to TeamDesk.

If you are using our old connector, please delete TeamDesk.PowerBI.DataConnector.mez file from [Documents]\Power BI Desktop\Custom Connectors. Using new certified connector will provide performance improvements, token-based authorization and is the only way to receive bugfixes and updates. As a bonus, using On-premises data gateway you can send TeamDesk data to Power BI server.

So, here we go!

Upon using Get Data, you’ll find TeamDesk connector for Power BI in Online Services category.

PowerBI Get Data options

Click on the connector, confirm you are using beta tech and you’ll be prompted to enter your database URL. Simplest way is to copy any database URL from browser window – but we’d prefer to strip the part after database identifier – for clarity.

TeamDesk connector for Power BI settings

Next, select authorization method and provide required information.

TeamDesk connector for Power BI authorization

As connector uses REST API to access the data please make sure REST API is enabled and well as user/password or token authorization for API.

Next, connector will prompt you to choose the table and the view to get the data from. On the screenshot is the data from Invoicing sample database.

Finally, click Load button to get the data to Power BI:

Then transform and visualize the way you want:

If you prefer programmability, there are two functions available at your disposal:

TeamDesk.SelectView(url, table, view) – given database URL, the name of the table and the name of view retrieves the content.

=TeamDesk.SelectView("", "Invoice", "List All")

produces result identical to the sample above. Or, there is even-more low-level function:

TeamDesk.Select(url, table, columns, filter, sort) – allows you to specify the data you need, precisely:

=TeamDesk.Select("", "Invoice", {"Name", "Total"}, "[Company]='ABC, Inc.'", "Due Date//DESC")

selects customer names and totals from invoices for ABC, Inc. company,  and sorts by recent due date on top.

Using TeamDesk connector with PowerBI server

In order to get fresh data from TeamDesk database to Power BI server you’ll need an always-on machine with PowerBI and On-premises data gateway installed and running.

Upload your .pbix file from Power BI Desktop to Power BI Server and configure data source for the gateway.

Please, pay attention to Data Source Information propety – URL you provide here should exactly match the URL configured in .pbix file.

Now test the connection. When successful, select the gateway in dataset’s Gateway connection section. Then you’ll be able to refresh the data manually or configure scheduled refresh.