For many years, our IT Admins have asked us to enable them to build their own call quality/reliability reports. We are happy to share that you are now empowered to build your own reports, powered by Advanced Call Quality Dashboard data.
Microsoft Call Quality Power BI Connector Installation
The process for installing a custom connector and adjusting security to enable use of the connector is described in detail in the Power BI documentation. For the sake of simplicity though, a quick explanation is provided below:
- Check to see if your computer already has a [Documents]\Power BI Desktop\Custom Connectors folder. If not, create this folder.1
- Download the connector file (either a *.mez or *.pqx file) and place it in the Custom Connectors directory.
- If the connector file is a *.mez file, you will also need to adjust your security settings as described in the custom connector setup documentation.
If a new version of the Microsoft Call Quality Power BI Connector is released, simply replace the old connector file in the Custom Connectors directory with the new file.
Microsoft Call Quality Power BI Connector Setup
In order to build a report and run queries, you will first need to connect to the CQD data source. Follow the steps below in order to connect:
- In the Home tab of Power BI Desktop, click on Get Data.
- The Get Data window should appear at this point. Navigate to Online Services, then select Microsoft Call Quality (Beta) and hit Connect.
- You will be prompted to login next. Use the same credentials that you use for CQD.2
- The next prompt will give you the option between two Data Connectivity modes. Select DirectQuery and hit OK.
- Finally, you will be given a final prompt showing you the entire data model for CQD. No data will be visible at this point, only the data model for CQD. Select Load to complete the setup process.
- At this point, Power BI will load the data model onto the right side of the window. The page will remain otherwise blank, and no queries will be loaded by default. Proceed to Building Queries below in order to build a query and return data.
If any of the steps during this setup process were not completely clear, a more detailed explanation of the process can be found here.
Building Queries using Microsoft Call Quality Power BI Connector
Once setup is complete, you should see the names of several hundred dimensions and measures load in the Fields pane. Constructing actual queries from here is simple, just select the dimensions and measures you want for your query, then drag and drop them onto the page. Here’s a more detailed explanation, with a simple example:
- Select the visualization you want to use from the Visualizations pane. A blank version of that visualization should appear on the page. For the purposes of this example, we will be using the Table visualization.
- Determine which dimensions and measures (denoted by an aggregation symbol by their name) you wish to use for your query, then manually select them and drag them onto the black visualization. Alternately, drag them onto the Values field beneath the visualization options.
Important Note: Call Quality Dashboard requires a measure for any query to run. Failure to add a measure to a query will cause that query to fail.
- Next, select any dimensions you want to filter on and drag them to the Filters on this visual field in the Filters pane. The Microsoft Call Quality Power BI Connector currently supports Basic filtering (select values from a list of possible dimension values), Advanced filtering (manually specify values and operands to filter on, similar to Advanced CQD), and Relative date filtering (only available for the End Time and Start Time dimensions). Filtering according to Top N is not supported by CQD.
- Finally, select the Format tab within the Visualizations pane to style and format your query.
Note: CQD queries require at least one measure in order to run. If your query does not load, double check that you have included a measure in the query.
Creating a Drill-through Report
Drillthrough in Power BI allows you to create focused reports that you can quickly filter using the values of other reports as context. Once you know how to create your first query with the Microsoft Call Quality Power BI Connector, creating a drillthrough is even simpler.
- Create another page for the focused report, and then add your queries to that page.
- Select the dimension you want to use as a drillthrough filter and drag them onto the Drillthrough field under on the Visualizations pane.
- That’s it! Any other query on another page that uses that dimension can now drillthrough to that page, automatically applying the drillthrough dimension’s value as a filter.
Unlike Advanced CQD, Power BI supports non-sequential drill-through. As long as a query includes the necessary dimension, it can drill-through to any other page.
Despite making use of Power BI, not all Power BI functionality is support by the Microsoft Call Quality Power BI Connector, either as a result of limitations on CQD data model (such as non existent data) or on DirectQuery connectors in general. The list below notes some of the Connector’s more noteworthy limitations, but this list should not be considered exhaustive:
- Calculated Columns – DirectQuery connectors in general have limited support for calculated columns in Power BI. While some calculated columns may work with the Connector, these should be considered exceptions. As a general rule, calculated columns will not function.
- Aggregations – The CQD data model is built on a cube model, meaning that aggregations are already supported in the form of measures. Attempting to manually add aggregations to different dimensions or changing the aggregation type of a measure will not work with the Connector, and it will generally result in an error.
- Custom Visuals – While the Microsoft Call Quality Power BI Connector does work with a range of custom visuals, we are unable to guarantee compatibility with all custom visuals. Many custom visuals rely on the use of calculated columns or imported data, neither or which are supported by DirectQuery connectors.
- Referencing Cached Data – Power BI currently does not support referencing cached data from a DirectQuery connector in any way. Any attempt to reference the results of a query will result in a new query.
- Relative Data Filtering – Is supported in the Call Quality Power BI Connector, but only with the Start Time and End Time dimensions. Although the Date dimension may be the obvious choice for relative date filtering, Date is not stored as a date time object and thus does not support relative date filtering in Power BI.
Please note, although the Connector is in preview, these limitations are unlikely to change with the final release of the Connector. Most of these issues are either restrictions to DirectQuery connector design in Power BI or fundamental to the design of the CQD data model.
Because the Microsoft Call Quality Power BI Connector is less restricted than the browser app in terms of kinds of queries you can construct, you may occasionally encounter a number of errors while building your queries. In the event that you receive an error message of the type “CQDError. RunQuery – Query Execution Error”, reference the list below with the ErrorType number provided in order to troubleshoot the possible issue with the query. The following are the most common Error Type codes you may encounter with the CQD Power BI Connector:
- ErrorType 1 - Query Structure Error: A query structure error is typically caused by the Connector failing to build a properly formatted query. This happens most often when using unsupported functionality, as specified in the Limitations above. Double check that you are not using any calculated columns or custom visuals for that query.
- ErrorType 2 - Query Building Error: A query building error is caused by the Call Quality Power BI Connector being unable to properly parse the query you are attempting to build. This happens most often when using unsupported functionality, as specified in the Limitations above. Double check that you are not using any calculated columns or custom visuals for that query.
- ErrorType 5 - Execution Timeout: The query has reached the maximum possible runtime before timing out. Try adding more filters to the query in order to limit its scope. Narrowing the data range is often the most effective way to achieve this.
- ErrorType 7 - No Measurements Error: CQD queries require a measure in order to function. Double check that your query includes measure. Measures in the Call Quality Power BI Connector are denoted by the aggregation (sum) symbol before their name.
If you encounter any additional errors outside of this scope, please notify the CQD team so that we can help troubleshoot the issue and update the documentation as appropriate.
Call Quality connector queries should be designed with drillthrough functionality in mind. Instead of trying to load all the data at once, and then slicing down with filters, start with broader, low-cardinality queries and drill down to high-cardinality queries. For instance, when attempting to diagnose which subnets contribute most to quality issues, it's helpful to first identify those regions and countries which contribute to the problem, then drill down to the subnets in that region or country. The Call Quality connector templates have been designed in this manner in order to act as an example.
Other useful best practice links:
Frequently asked questions
Why does the connector seem slower compared to Advanced CQD in the browser? What can I do to improve performance?
Query performance for the various templates is actually the same in both the browser and in the connector. Just like any other standalone app, Power BI adds its authentication and rendering time to our performance. In addition, the difference comes in the number of concurrent queries being run. Because the in-browser version of CQD had less well-developed and information-dense visualization options, most of our reports were limited to loading 2-3 queries at a time. On the other hand, the connector templates often display 20+ concurrent queries. If you wish to build reports that are just as responsive as the older ones you were used to, try creating reports with no more than 2-3 queries per tab.
1 Certain processes and apps (e.g. OneDrive) may cause your Documents root folder to change; make sure that the Power BI Desktop\Custom Connectors directory is placed inside of the current root folder Documents folder.
2 The login credentials you use for CQD do not need to be the same credentials you use for logging into the Power BI Desktop app itself.
Copyright 2020 Microsoft Corporation
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.