gpt4 book ai didi

javascript - 没有在嵌入式 Power BI 报告中获取 report.getPages

转载 作者:行者123 更新时间:2023-12-04 16:26:40 30 4
gpt4 key购买 nike

在尝试从 .Net MVC 应用程序中的 Embedded Power BI 报告中获取视觉效果时,我尝试了下面提到的来自 Embedded Power BI Playground 站点的代码。但我无法获得视觉效果。在调试时,我可以看到 Report 的 getPages 属性的值为:

getPages: ƒ ()arguments: null caller: null 长度: 0 name: ""

还有 console.log(report.getPages()); 给出

[[PromiseStatus]]:“待定”[[PromiseValue]]:未定义

PF 我试过的代码:

// Get a reference to the embedded report HTML element
var embedContainer = $('#embedContainer')[0];

// Get a reference to the embedded report.
report = powerbi.get(embedContainer);

// Retrieve the page collection and get the visuals for the first page.
report.getPages()
.then(function (pages) {
// Retrieve active page.
var activePage = pages.filter(function (page) {
return page.isActive
})[0];

activePage.getVisuals()
.then(function (visuals) {
Log.log(
visuals.map(function (visual) {
return {
name: visual.name,
type: visual.type,
title: visual.title,
layout: visual.layout
};
}));
})
.catch(function (errors) {
Log.log(errors);
});
})
.catch(function (errors) {
Log.log(errors);
});

最佳答案

您有时间问题。使用 PowerBI 事件处理程序并且不要对报表应用更改,除非您知道报表已完全加载、呈现且可用。为此,您可以确保 Rendered 事件。

https://github.com/Microsoft/PowerBI-JavaScript/wiki/Handling-Events

这是一个获取页面、从页面获取视觉对象以及从视觉对象导出数据的示例。

var report = powerbi.embed(reportContainer, config);

report.on("rendered", function (event) {
// do stuff here like get pages, export data, apply filters or whatever it is you want to do to manipulate the report

report.getPages().then((pages) => {
pages[0].getVisuals().then((visuals) => (d = visuals));
});

var v = d[1].exportData(models.ExportDataType.Summarized, 100);
});

关于javascript - 没有在嵌入式 Power BI 报告中获取 report.getPages,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62653132/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com