Forum Discussion
Select with SelectionManager by rows instead of by category
In my dataview I have a table where each row contains 3 columns. Is there a way for me to tell the Selection Manager to select the a specific row in the DataView?
I've learned how to do it by category, which is quite simple and useful, but I'm at a loss on how to do it by rows from a given table in the DataView.
To select data by row you should generate a SeletionId for each row by ushing this code:
/** This is TypeScript method */ private static getSelectionIds(dataView: DataView, host: IVisualHost): powerbi.visuals.ISelectionId[] { return dataView.table.identity.map((identity: DataViewScopeIdentity) => { const categoryColumn: DataViewCategoryColumn = { source: dataView.table.columns[0], values: null, identity: [identity] }; return host.createSelectionIdBuilder() .withCategory(categoryColumn, 0) .createSelectionId(); }); }After that, you will be able to use SelectionManager to select particular rows.
Ignat Vilesov,
Software Engineer
Microsoft Power BI Custom Visuals
2 Replies
- v-viigCommunity Champion
To select data by row you should generate a SeletionId for each row by ushing this code:
/** This is TypeScript method */ private static getSelectionIds(dataView: DataView, host: IVisualHost): powerbi.visuals.ISelectionId[] { return dataView.table.identity.map((identity: DataViewScopeIdentity) => { const categoryColumn: DataViewCategoryColumn = { source: dataView.table.columns[0], values: null, identity: [identity] }; return host.createSelectionIdBuilder() .withCategory(categoryColumn, 0) .createSelectionId(); }); }After that, you will be able to use SelectionManager to select particular rows.
Ignat Vilesov,
Software Engineer
Microsoft Power BI Custom Visuals
- AnonymousNot applicable
Hi, identity: DataViewScopeIdentity is not working anymore. Do you any suggestions ?