The ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM.
Get registeredCompete to become Power BI Data Viz World Champion! First round ends August 18th. Get started.
I have an embed Bi report. I need to preset a filter on the report. I can get this working when I run the first piece of code AFTER the report has finished loading. I need this to be done before so that the filter is pre applied. I have tried following the instructions and appeding the slicers to my initial config using the second peice of code but it does not work.
setFilter1() { this.biReport.getPages() .then(function (pages) { var firstPage = pages[1]; firstPage.getVisuals() .then(function (visuals) { let visual = visuals.filter(x => x.title === 'Current/Previous Month')[0]; if (visual) { const basicFilter = { $schema: 'http://powerbi.com/product/schema#basic', target: { table: 'WorkOrdersView', column: 'Current/PreviousMonth' }, operator: 'In', values: ['Current Month'], filterType: pbi.models.FilterType.Basic }; visual.getSlicerState().then(slicer => { slicer.filters = []; visual.setSlicerState({ filters: [basicFilter] }).then(s => { this.myslicers = s; }).catch(errors => { console.log(errors); }); }); } }); }); }
slicers = [ { selector: { $schema: 'http://powerbi.com/product/schema#visualSelector', visualName: 'c21a3d6790798afcfb8c' }, filters: [ { $schema: 'http://powerbi.com/product/schema#basic', target: { table: 'WorkOrdersView', column: 'Current/PreviousMonth' }, operator: 'In', values: ['Current Month'] } ] } ]; embedConfig = { type: 'report', id: '', slicers: [this.slicers], embedUrl: '', tokenType: pbi.models.TokenType.Embed, accessToken: '' };