我们正在开发一个Power BI嵌入式应用程序,其中我们有一个包含Power BI报告的Azure网站,该报告也会上传到我们的Azure服务器上。
我知道我可以在嵌入iframe的Power BI应用中设置过滤器参数,如下所示:
function onFrameLoaded() {
var m = {
action: "loadReport",
reportId: reportId,
accessToken: accessToken
};
iframe.contentWindow.postMessage(JSON.stringify(m), "*");
当您嵌入在Web上发布的Power BI报告时,此功能可用。但它并不适用于Power BI Embedded。有没有办法在Power BI Embedded中完成相同类型的过滤?
答案 0 :(得分:0)
使用新的(呃)Power BI Embedded JS SDK,您可能会丢失iframe.postMessage方法,并让SDK与嵌入式实体进行通信。
我可以推荐您:http://aka.ms/pbijs来使用新版本的SDK。
此外,您可以使用以下内容传递比OData更高级的过滤器(您需要将其放入网址中):https://github.com/Microsoft/PowerBI-JavaScript/wiki/Filters 这可以在加载期间(通过加载配置)或在与嵌入式报告交互期间完成。