Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!
Hi
we use this code :
the code :
if (accessToken && reportId && embedURL) {
var embedConfiguration = {
type: 'report',
accessToken: accessToken,
id: reportId,
embedUrl: embedURL,
settings: {
filterPaneEnabled: false
}
};
window.powerbi.embed(document.getElementById('reportContainer'), embedConfiguration);
if (projectName) {
var Promise = require('es6-promise').Promise;
var report = window.powerbi.get(document.getElementById('reportContainer'));
report.on('loaded', function() {
const filter = {
$schema: "http://powerbi.com/product/schema#basic",
target: {
table: "011 - Projets",
column: "01 - Projet"
},
operator: "In",
values: [projectName]
};
report.setFilters([filter]);
});
}
}
But if we have several filters on page report , the others filters disappear
We reactive panel to see in embedded :
in power bi .com we have 5 others filters :
An idea ?
Thanks
Best reagards
Solved! Go to Solution.
Hi @Cobra77,
The setFilters() will clear the old filters by default. I would suggest you try the workaround below. Get the old filters first and set the new filters as old filters plus new filters.
// Build the filter you want to use. For more information, See Constructing // Filters in https://github.com/Microsoft/PowerBI-JavaScript/wiki/Filters. const filter = { $schema: "http://powerbi.com/product/schema#basic", target: { table: "DimProduct", column: "ClassID" }, operator: "In", values: ["1"] }; // Get a reference to the embedded report HTML element var embedContainer = $('#embedContainer')[0]; // Get a reference to the embedded report. report = powerbi.get(embedContainer); // Get old filters first. report.getFilters() .then(function (old_filters) { report.setFilters(old_filters.concat([filter])) .catch(function (errors) { Log.log(errors); }); }) .catch(function (errors) { });
Best Regards,
Dale
Hi @Cobra77,
The setFilters() will clear the old filters by default. I would suggest you try the workaround below. Get the old filters first and set the new filters as old filters plus new filters.
// Build the filter you want to use. For more information, See Constructing // Filters in https://github.com/Microsoft/PowerBI-JavaScript/wiki/Filters. const filter = { $schema: "http://powerbi.com/product/schema#basic", target: { table: "DimProduct", column: "ClassID" }, operator: "In", values: ["1"] }; // Get a reference to the embedded report HTML element var embedContainer = $('#embedContainer')[0]; // Get a reference to the embedded report. report = powerbi.get(embedContainer); // Get old filters first. report.getFilters() .then(function (old_filters) { report.setFilters(old_filters.concat([filter])) .catch(function (errors) { Log.log(errors); }); }) .catch(function (errors) { });
Best Regards,
Dale
User | Count |
---|---|
18 | |
11 | |
5 | |
4 | |
3 |