Connect TaqtOne & Ubiqod to Power BI | Step-by-Step Guide

How to connect TaqtOne, SafeQod, and QR codes to Power BI?

In this article, we will see how to display data from trackers in Power BI, Microsoft’s data visualization and analytics dashboard tool.
Example of a satisfaction data visualization widget in Power BIExample of a satisfaction data visualization widget in Power BI
Notes
Before following this tutorial, we recommend reading the article: Sending email alerts with Microsoft Power Automate to familiarize yourself with the Power Automate connector of the Ubiqod platform.

Architecture: using Microsoft Lists

To send tracker data to Power BI, there are two possible options:
  1. Send data directly to a Power BI dataset (streaming/push)
  2. Send data to a SharePoint list that will be synchronized at regular intervals with a Power BI dataset
The first option is suited for use cases where real-time data is a priority, which is rarely the case for data visualization, typically used for retrospective analysis. In addition, storing data directly in a dataset has several drawbacks, particularly in terms of volatility, data cleaning, and data management.

That’s why in this tutorial, we will use Microsoft Lists as an intermediate database. This tool offers several advantages:
  1. It is included in SharePoint and/or Microsoft 365 licenses
  2. It supports a large number of rows (although optimization is required for high data volumes)
  3. It can be integrated into a SharePoint portal
  4. It provides an ergonomic interface for data visualization and management
  5. It offers native export features to Microsoft tools and allows real-time rule triggers based on incoming data (for example, an email alert when satisfaction drops below a threshold)
We will then set up automatic synchronization between the data in this list and Power BI.

Create a Microsoft Lists list

The first step is to create a list containing all the data we will need in Power BI.

Create a list in Microsoft List to track customer satisfaction

Example for collecting satisfaction data in an airport:
  1. The Time column will contain the time at which the tracker sent the data. It should be in date format and include the event time.
  2. The Place column will contain the tracker label, which in this case corresponds to its location within the airport.
  3. The Score column will contain the rating given for that data entry at the specified time.
  4. The Votes column will contain the number of votes recorded for that score at that time.
Many other data points are available. For example, you can use sites in combination with tracker labels.

Connect Ubiqod to the list using Power Automate

To send tracker data to the list, create a Power Automate flow using the “Receive Data From Trackers” trigger from Taqt (make sure to create the associated connector in Ubiqod).

Configure Power Automate for Microsoft List

Map the list fields with the corresponding tracker data:

Field mapping in Power Automate for Ubiqod

Info
You can find the list of available fields in Ubiqod here.
Save your flow and turn it on. You can test it using QR codes or the simulator built into the Ubiqod platform.

Synchronize list data with a Power BI dataset

In Microsoft Lists, click Export to Power BI from the Export menu:

Sync List with Power BI

Create a dataset associated with this source and select the workspace where the dataset will be stored:

Connect data source

Display the data in Power BI

The dataset is now available for creating reports from the data. By default, the data will be stored in a table called "table".

You can write DAX queries to create your own indicators, such as the aggregated satisfaction level hour by hour, using the following formula:

Aggregated Score = DIVIDE( SUMX('table', 'table'[Score] * 'table'[Votes]), SUM('table'[Votes]), 0 )

With the following column for the hourly time slot:

DateHour = 'table'[Time] - MOD('table'[Time], 1/24)

You can then use these new columns to create your reports:

Use column in the power bi report

Data refresh

You can schedule automatic data refresh:

Schedule data refresh in Power BI

Known limitations

Power Automate limits the number of daily actions depending on your license. In this case, consider using Azure Logic Apps.
Microsoft Lists can theoretically handle millions of rows. However, performance issues may arise once you reach several thousand rows, particularly in terms of display and synchronization time. Below are some optimization tips to help you get the most out of the solution.

Indexing

Indexing allows SharePoint to sort and filter large volumes of data more efficiently.

If you mainly work with date-based queries, you can, for example, index the column containing the date of the data sent by the trackers:

Column indexing in Microsoft List

7-day default view

Creating a view with the most recent data and setting it as the default view limits the amount of data displayed when users access the list, thereby improving performance:

7 days data view in Power BI

Using multiple lists (partitioning)

To avoid overloading a single list, it is recommended to use multiple lists—for example, one list per client or per contract—with dedicated Power Automate flows and Ubiqod connectors for each.

Using Dataverse

If you plan to generate tens or even hundreds of thousands of rows, consider storing the data in Dataverse. It is a database better suited for handling large volumes of data and can also be synchronized with a Power BI dataset.

    Try Ubiqod

    Get 100 free credits to start building with Ubiqod: sign up here

      • Related Articles

      • Use Microsoft Power Automate to send email alerts (and more)

        Do you want to send an email as soon as a user presses a button on the TaqtOne or scans a QR code? Need to build a SharePoint dashboard to work with your field data? With the Ubiqod connector for Microsoft Power Automate, you can easily connect your ...
      • Dynamic QR codes: Redirections

        What is a dynamic QR code? A dynamic QR code allows users to access content that can be changed without the need to modify the QR code itself. This type of QR code is especially useful for marketing and informational purposes where the underlying ...
      • Add a SafeQod (formerly Ubiqod Key) to your Ubiqod account

        Introduction SafeQod (formerly Ubiqod Key) is a secure, patented QR code designed for use cases that require enhanced security. Before you can use a SafeQod on the Ubiqod platform, it must first be added to your account. After purchasing SafeQods, ...
      • On-site staff time tracking with QR codes

        Ubiqod allows you to set up a simple and reliable QR code-based time tracking system for on-site teams. This solution is ideal for use cases such as cleaning teams management or temporary staff tracking during events. Create a time tracking form ...
      • Track Item Status In monday.com (QR codes)

        With Ubiqod, you can track the status of a monday.com item using QR codes. Watch this video to learn how to achieve this. The Ubiqod platform evolves frequently. Don't worry if the interface looks different in the video—the principles remain the ...