Power BI is turning 10, and we’re marking the occasion with a special community challenge. Use your creativity to tell a story, uncover trends, or highlight something unexpected.
Get startedJoin us for an expert-led overview of the tools and concepts you'll need to become a Certified Power BI Data Analyst and pass exam PL-300. Register now.
Hello,
I am implementing the valueFormatter on a custom visual that hosts data in a table. I have followed the documentation in this link, but it seems this only covers categorical. Formats on numeric measures in table view seem to attach themselves directly to the row values rather than being located elsewhere.
The example below shows a row array found within the dataview.table.rows. In this example, the fourth element of the array is a numeric measure, and the fifth element is its format string. This format string is found in every single record of the array.
[
"s471",
"\"Bridgerton\" cast members share behind-the-scenes stories from the hit show, plus comedian Nikki Glaser breaks down the costume drama's sexiest moments.",
"2021-07-12T22:00:00.000Z",
0.34014698024839163,
"#.########EUR",
"39 min"
]
Likewise, adding a dynamic formatting string to a measure also seems to add a column in dataviews.table.columns. This column always looks like this:
{
"displayName": "",
"isMeasure": true
}
And its placement in the array is also after the numeric measure (with a format), so I assume it's related to this.
Before implementing the valueformatter, linking rows and columns was extremely easy and intuitive. This is obviously not a major hurdle, but can it really be that a whole column is added to the metadata and every record has the format string? This is not the case when I add formatting to a date, as the formatting string is found directly within the metadata column.
This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.
Check out the June 2025 Power BI update to learn about new features.