Установка активной страницы в отчете Power BI - PullRequest
1 голос
/ 06 августа 2020

У меня в отчете 4 страницы. Мне нужно отображать разные страницы в зависимости от веб-сайта, который в настоящее время просматривает клиент. Изначально у меня было 4 разных конфигурации, которые загружали отчет 4 раза. Конечно, это сильно повлияло на производительность и просто не является правильным решением.

Сначала я пробовал это

var report = powerbi.embed($reportContainer.get(0), embedConfigurationMain);
report.setFilters([basicFilterMain, stocktakeIdFilterMain]);
var page = report.page('ReportSectionxxxxxxxxx');
page.setActive();

Но он по-прежнему отображает страницу по умолчанию отчет.

Затем я нашел человека с похожей проблемой здесь https://community.powerbi.com/t5/Developer/set-active-page-in-report-with-JavaScript-API/m-p/93716#M .. . и попробовал предложенное решение, но получаю следующую ошибку:

Uncaught TypeError: Cannot read property 'setActive' of undefined

Затем я проверял игровую площадку Power BI и использовал точный код, который они там предоставляют, а именно:

report.getPages()
.then(function (pages) {
    pages[0].setActive()
        .then(function () {
            Log.logText("Active page was set to: \"" + pages[0].displayName + "\"");
        })
        .catch(function (errors) {
            Log.log(errors);
        });
})
.catch(function (errors) {
    Log.log(errors);
});

Но все равно радости нет, ничего не происходит. Даже не получаю сообщения в консоли.

Как правильно настроить активную страницу отчета в JavaScript API? Я использую самую последнюю версию Power BI Embedded SDK.

1 Ответ

1 голос
/ 06 августа 2020

Для вашей цели есть обходной путь. Как вы сказали, у вас другой веб-сайт, и вы хотите отображать разные страницы в своем отчете в зависимости от того, с какого веб-сайта поступает запрос.

Вы можете указать URL-адрес браузера для другой страницы в своем отчете из службы Power BI. Просто go на другую страницу вашего отчета, вы получите страничные ссылки. Вы можете видеть, что одна и та же страница всегда генерирует уникальный URL-адрес в браузере. Итак, если в вашем отчете 4 страницы, вы получите 4 уникальных URL-адреса из браузера.

Теперь вы можете установить целевой URL-адрес (с указанием страницы c) в ссылке вашего веб-сайта. Надеюсь, этот трюк сработает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...