Learn from the best! Meet the four finalists headed to the FINALS of the Power BI Dataviz World Championships! Register now
module powerbi.visuals {
export class MyHelloWorld implements IVisual {
public static capabilities: VisualCapabilities = { };
private hostContainer: JQuery;
private table: JQuery;
public init(options: VisualInitOptions): void {
this.hostContainer = options.element;
this.hostContainer.append(
"<table id='MyTableVisual'>" +
"<thead><tr>" +
"<th>Column</th>" +
"<th>isMeasure</th>" +
"<th>QueryName</th>" +
"<th>GroupName</th>" +
"</tr></thead>" +
"<tbody></tbody>" +
"</table>"
);
}
public update(options: VisualUpdateOptions) {
var dataViews = options.dataViews;
if (!dataViews) return;
$("#MyTableVisual tbody").empty();
var columns = dataViews[0].metadata.columns;
for (var i = 0; i < columns.length; i++)
{
var newHtml = [];
newHtml.push("<tr>")
newHtml.push("<td>" + columns[i].displayName + "</td>")
newHtml.push("<td>" + columns[i].isMeasure + "</td>")
newHtml.push("<td>" + columns[i].queryName + "</td>")
newHtml.push("<td>" + columns[i].groupName + "</td>")
newHtml.push("</tr>")
$("#MyTableVisual").append(newHtml.join())
}
}
}
}I am trying to play with visuals, and I am 1 step behind "Hello, World!". I thought I would output the metadata... but the results are totally not what I expect. eg: if I use the "FileStorage" dataset, I get...
Column isMeasure QueryName GroupName
| Date | undefined | Date | undefined |
| Sales | true | bmw | BMW |
| Sales | true | alfa | Alfa Romeo |
which doens't seem to map that well to :
am I missing something here? or does my code just suck? 🙂
| User | Count |
|---|---|
| 3 | |
| 2 | |
| 1 | |
| 1 | |
| 1 |
| User | Count |
|---|---|
| 2 | |
| 2 | |
| 2 | |
| 2 | |
| 2 |