Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Did you hear? There's a new SQL AI Developer certification (DP-800). Start preparing now and be one of the first to get certified. Register now

Reply
Anonymous
Not applicable

matrix selection error on other visual

hi power bi community

 

i try create selection with my matrix custom visual, but that make error on other visual

this is my transform, using builder withMatrixNode

 

function visualTransform(options: VisualUpdateOptions, host: IVisualHost): DataViewModel {

    let dataViews = options.dataViews[0];
    var rows = dataViews.matrix.rows;
    let listSelectionId: DataListSelection[] = [];
    let selectionIdBuilder = host.createSelectionIdBuilder();

    rows.root.children.forEach(x => {
        listSelectionId.push({
            value: x.value,
            selectionId: selectionIdBuilder.withMatrixNode(x, rows.levels).createSelectionId()
        });

        if (x.children)
            x.children.forEach(z => {
                listSelectionId.push({
                    value: z.value,
                    selectionId: selectionIdBuilder.withMatrixNode(z, rows.levels).createSelectionId()
                });
                if (z.children)
                    z.children.forEach(a => {
                        listSelectionId.push({
                            value: a.value,
                            selectionId: selectionIdBuilder.withMatrixNode(a, rows.levels).createSelectionId()
                        });

                    })
            })
    });
    return {
        dataPoints: listSelectionId
    }
}

I'm already add click listener to get selection Id and make it selected in manager, and this is the console log

 

c-selection.PNG

 

but but my page always got error in other visual:

c-selection-2.PNG

 

what wrong with my selection code?

 

and one more question, I'm already declare selectcallback in my manager but never called when other visual make selection

        this.selectionManager = this.host.createSelectionManager();
        console.log('constructor allow interaction', this.host.allowInteractions);
        this.selectionManager.registerOnSelectCallback(() => {
            console.log('selection manager callback', this.selectionManager.getSelectionIds());
        });
        this.selectionIdBuilder = options.host.createSelectionIdBuilder();

please help, I'm already strugling with this for 3 days

1 ACCEPTED SOLUTION
Anonymous
Not applicable

finnally I'm solve this

 

thank's to @dm-p  ae https://community.powerbi.com/t5/Developer/Custom-Visual-Selection/m-p/746946#M20083

 

I'm remove the let builder definition and everything work properly

View solution in original post

1 REPLY 1
Anonymous
Not applicable

finnally I'm solve this

 

thank's to @dm-p  ae https://community.powerbi.com/t5/Developer/Custom-Visual-Selection/m-p/746946#M20083

 

I'm remove the let builder definition and everything work properly

Helpful resources

Announcements
April Power BI Update Carousel

Power BI Monthly Update - April 2026

Check out the April 2026 Power BI update to learn about new features.

Fabric SQL PBI Data Days

Data Days 2026 coming soon!

Sign up to receive a private message when registration opens and key events begin.

New to Fabric survey Carousel

New to Fabric Survey

If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.

Power BI DataViz World Championships carousel

Power BI DataViz World Championships - June 2026

A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.