Forum Discussion
Filter Chart using JavaScript API
- 9 years ago
I thought you'were embedding the report via Power BI REST API. If via "Publish to web", then it may, as the message indicats, not be supported. Try via Power BI REST API instead.
Make sure you've add the script reference in the html page.
<script src="https://microsoft.github.io/PowerBI-JavaScript/demo/bower_components/powerbi-client/dist/powerbi.js"></script>
Also you can try below sample, which actually works in my test.
var Filter = {
$schema: "http://powerbi.com/product/schema#advanced",
target: {
table: "Sales CountryRegionCurrency",
column: "CountryRegionCode"
},
logicalOperator: "OR",
conditions: [
{
operator: "Contains",
value: "CN"
},
{
operator: "Contains",
value: "CO"
}
]
}
var embedConfiguration = {
type: 'report',
accessToken: 'xxxxx',
id: '94da70b0xxxxxx-86bb8a2b9c18',
embedUrl: 'https://embedded.powerbi.com/appTokenReportEmbed?reportId=94da70bxxxxxx8a2b9c18',
};
var $reportContainer = $('#reportContainer');
var report = powerbi.embed($reportContainer.get(0), embedConfiguration);
<!--validateReportLoad incorrectly returns schema errors for valid filters #16https://github.com/Microsoft/powerbi-models/issues/16-->
report.on('loaded', event => {
report.getFilters()
.then(filters => {
filters.push(Filter);
return report.setFilters(filters);
});
});
Thanks Eric_Zhang. I'm able to fix the filter undefined error .But still filter is not getting applied.
Receiving below error in the console when setFilter is called.
Uncaught (in promise) Message:"This feature is not supported for Publish To Web."
Is it anything to do with the way the report is published.
- Eric_Zhang9 years agoMicrosoft Employee
I thought you'were embedding the report via Power BI REST API. If via "Publish to web", then it may, as the message indicats, not be supported. Try via Power BI REST API instead.
- skancharla9 years agoAdvocate II
- ggww7 years agoRegular Visitor
Hi
I used the following code and it is not working, any suggestions?
var report = powerbi.embed(reportContainer, config);
var filter = {
$schema: "http://powerbi.com/product/schema#basic",
target: {
table: "customers",
column: "CustomerID"
},
operator: "Is",
values: "1234" //,
};//report.removeFilters();
report.setFilters([filter]);thansk heaps..