我有一个数据源,通常每个街道,城市,州和国家的人口。
在我的原始报告中,我展示了国家和州的所有视觉效果。在目标报告中,我在城市和街道上展示视觉效果。
我正在添加交叉报告使用此文档Use cross-report drill through in Power BI Desktop追溯至我的源报告。当我从Power BI服务帐户访问我的报告时,这工作正常。
但是当我尝试将源报告用作嵌入式链接时,这将无法正常工作。这些功能在Power BI中是否有任何限制(或)有没有办法做到这一点?
请提出建议!!
嵌入报表时,您要指定要嵌入的确切报表。而跨报表钻取将尝试打开目标报表(不是嵌入式报表,即源报表),这在Power BI服务中不是问题。
解决方法:
在事件侦听器中,存储过滤器并在报告的嵌入配置中将嵌入URL从源更改为目标。例如:
fil = []; report.on("commandTriggered", function (command) { for (i = 0; i < command.detail.dataPoints[0].identity.length; i++) { var basicFilter = { $schema: "http://powerbi.com/product/schema#basic", target: command.detail.dataPoints[0].identity[i].target, operator: "In", values: [command.detail.dataPoints[0].identity[i].equals], } fil.push(basicFilter); } embedConfiguration.embedUrl = "<YOUR REPORT EMBED URL>"; embedConfiguration.id = "<YOUR REPORT ID>"; report = powerbi.embed(embedContainer, embedConfiguration); });
然后将所有过滤器应用于已加载事件的报表:
report.on("loaded", function () { report.getFilters() .then(filters => { for (i = 0; i < fil.length; i++) { filters.push(fil[i]); } return report.setFilters(filters); }); });
[在目标报告中添加按钮以返回到源报告。使用“ buttonClicked”事件监听器捕获对后退按钮的单击。触发此事件后,将容器的嵌入URL更改为源报告。