Skip to content →

A Hint on Screen Readers and Power BI Tables

If you’ve ever opened a book to a random page and jumped into the middle of action where you know little about the characters, plot, or anything else, then this short posting might seem familiar.

I work with a range of programs and technologies pretty much daily at Microsoft. One of the areas I’ve been working in a great deal lately is with the team responsible for Power BI. If you’ve never heard of this technology, the short version is that it makes creating presentations of data from a wide range of sources possible with predefined containers, known as visuals, for displaying that information. This can be everything from tables two other grids along with a wide range of chart types, such as pie charts, bar charts and many others.

Today when you use the table, visual it has some issues with screen readers. Although the information is present, it is communicated in such a way that it has several key challenges.

The tables today can best be thought of as simulated tables. For accessibility purposes, this means that the text from each cell in the table is communicated as an alert as you navigate. It also means in braille text shows up as what screen readers call a “flash” message. Functionally the text disappears in a few seconds. In addition, you are not able to review the text without moving away from and back to a given cell with a screen reader and speech. Last, the tables in particular require you to turn off any screen reader virtual mode and use Power BI navigation to interact.

One of the strengths of Power BI is that it is quite easy for a Power BI report author to take information from one visual and convert it to another. In fact it is typically just a matter of selecting the visual and choosing a different type of visual and making any adjustments for the particular chart or other item.

Because my work requires me to access a wide range of information in Power BI( and because part of my current job has me working with the Power BI team to improve on the accessibility, I’ve been creating a number of reports. I’ve found a handy simple change that I wanted to share here because it can make a big difference in using information from a Power BI report with a screen reader.

Again, remember I said this post was like jumping in the middle of a book so if none of this makes sense, file it away as one of those things that might come in handy if you start working with Power BI.

By changing my Power BI tables to what the product calls a multi-row card, I can dramatically improve the speech and braille access to the information. You still need to turn off any virtual mode for best access but all the information from each row of the table is now available for full review in both speech and braille. It does not disappear.

By default, in the multi-row card situation, each piece of data is prefaced by what used to be the column header for that table column. However, Power BI allows you to rename the column headings. While you are not able to fully eliminate them, I’ve found that renaming each column heading to a period, again makes this a much improved reading experience.

The end result, with these two changes is that you get a reading experience very similar to list-views in places like File Explorer in Windows or message lists in multiple email programs. All the data from a row in a table is combined into one single collection of information and the column headers are eliminated. When you are reading through row after row of information, repetition of the column headers is needless noise.

This technique may not be suitable for widespread report distribution and as I said in my day job I’m working with the team in this area. But if you need to use Power BI reports for yourself or can work with a report author to explore this technique, it can make a big difference.

Published in Uncategorized

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.