Делите путем


Додавање Power BI извештаја или контролне табле веб-страници

Савет

Овај чланак објашњава како да додате Power BI извештај или контролну таблу користећи powerbi Liquid ознаку. Да бисте додали Power BI компоненту на веб-страницу на веб-локацији помоћу студија за дизајнирање, идите у одељак Додавање Power BI компоненте.

Можете да додате Power BI извештај или контролну таблу веб-страници на порталу користећи Liquid ознаку powerbi. Користите ознаку powerbi у пољу Копија на веб-страници или у пољу Извор у веб-предлошку.

Ако додајете Power BI извештај или контролну таблу креирану у новом радном простору у услузи Power BI, морате да одредите тип потврде идентитета као powerbiembedded у powerbi Liquid ознаци.

Белешка

  • Ако сте навели Microsoft Entra ИД као тип потврде идентитета у поwерби Лиqуид ознаки, морате га делити са потребним корисницима пре него што додате безбедни Power BI извештај или контролну таблу на Wеб страницу на порталу. Још информација: Дељење Power BI радног простора и Дељење Power BI контролне табле и извештаја.
  • powerbiembedded подржава Power BI контролне табле и извештаје који се повезују са услугом Azure Analysis Services. Такође можете користити својство „customdata“ у Liquid коду за прослеђивање вредности за својство CustomData.
  • Пагинирани Power BI извештаји нису подржани.

На пример:

{% powerbi authentication_type:"powerbiembedded" path:"https://app.powerbi.com/groups/00000000-0000-0000-0000-000000000000/reports/00000000-0000-0000-0000-000000000001/ReportSection01" %}

Да бисте сазнали како да добијете путању до контролне табле и ID плочице на контролној табли, погледајте одељке касније у овом чланку.

Коришћење контролне табле или извештаја који се повезују са услугом Azure Analysis Services

Можете додати powerbi Liquid ознаку помоћу контролне табле или извештаја који се повезује са услугом Azure Analysis Services.

Да бисте додали контролну таблу или извештај који се повезују са услугом Azure Analysis Services, користите параметар CustomData у ниски за повезивање.

На пример:

{% powerbi authentication_type:"powerbiembedded" path:"https://app.powerbi.com/groups/<GroupID>/reports/<ReportID>" roles:"<roles associated with report>" customdata:"<customdata>" %}

Опционална ознака customdata се може конфигурисати као ниска или динамички генерисати на основу атрибута објекта, користећи тачку („.“) или углате заграде („[]“) за раздвајање између објекта и атрибута, између два пара витичастих заграда.

Примери:

  • customdata: {{ object.attribute }}
  • customdata: {{ object[attribute] }}

Пошто ознака customdata враћа ниску, можда ће бити потребно да конвертујете ову ниску у цео број у DAX упиту.

Важно

Azure Analysis Services и улоге (RLS)

Ознака улоге није обавезна за извештаје и контролне табле засноване на услузи Azure Analysis Services. Када се не користи, улога подразумевано има вредност улоге којој је апликација додељена у услузи Azure Analysis Services.

Међутим, ова ознака може постати неопходна за одређивање одређене улоге (или улога) између неколико доступних улога и можда ће и даље бити потребна када се користи безбедност на нивоу реда.

Улоге се налазе у Azure Analysis Services бази података, а не у самом извештају, за разлику од других типова Power BI извештаја.

  • Не обезбеђује никакве улоге у Liquid коду.

    Ако у Liquid коду није наведена ниједна улога, улога услуге Azure Analysis Services одређиваће се улогама којима апликација има приступ и филтрираће резултате на основу задатих прилагођених података према DAX упиту у улогама. Односно, све доступне улоге комбиноваће приступ, али ће се и даље филтрирати ако су обезбеђени прилагођени подаци релевантни. Овај сценарио ће најчешће бити случај са Azure Analysis Services извештајима или контролним таблама са једном плочицом.

  • Обезбеђује улоге у Liquid коду.

    Azure Analysis Services улоге се могу обезбедити у Liquid коду, слично RLS улогама. Употреба ових улога може бити обавезна када је доступно више улога, али желите да користите одређене улоге за страницу. Када користите било коју улогу у ниски за повезивање, навођење Azure Analysis Services улоге је обавезно. На пример, контролне табле са више плочица које користе Azure Analysis Services плочице са RLS плочицама.

    Следећа разматрања се примењују када користите Azure Analysis Services плочице на контролној табли:

    • Ако се Azure Analysis Services плочица користи на контролној табли са другим плочицама које захтевају улоге, Azure Analysis Services улога се мора додати на листу улога.
    • Више плочица из различитих Azure Analysis Services извора може се користити са сопственим улогама, али прилагођени подаци морају бити исти за сваку, а више вредности прилагођених података не могу се користити у Liquid коду. Ознака customdata и параметар customdata за EffectiveIdentity узима само вредност ниске.

Пронађите путању контролне табле или извештаја

  1. Пријавите се у Power BI.

  2. Отворите контролну таблу или извештај који желите да уградите у портал.

  3. Копирајте URL адресу са траке адресе.

    Преузимање путање Power BI контролне табле.

Преузмите ID плочице контролне табле

  1. Пријавите се у Power BI.

  2. Отворите контролну таблу из које желите да уградите плочицу на веб-локацију.

  3. Поставите показивач на плочицу, изаберите Више опција, а затим изаберите Отвори у режиму фокуса.

    Отворите плочицу Power BI командне табле у режиму фокусирања.

  4. Ископирајте ID плочице из URL адресе на траци адресе. ID плочице је вредност након /tiles/.

    ID плочице Power BI контролне табле.

Како се користи powerbi-client JavaScript библиотека у услузи Power Pages

Можете користити powerbi-client JavaScript библиотеку за Power BI Embedded извештаје или контролне табле на веб-локацији. За више информација о powerbi-client JavaScript библиотеци, погледајте Power BI JavaScript wiki.

У наставку се налази пример JavaScript кода за ажурирање подешавања извештаја или руковање догађајима. Овај пример онемогућава окно филтера, онемогућава навигацију по страници и омогућава догађај dataSelected.

Важно

  • Користите powerbi-client JavaScript библиотеку да бисте онемогућили или омогућили окно филтера. Међутим, ако желите да ограничите приступ подацима или конфигуришете безбедност, користите Безбедност на нивоу реда (RLS) уз Power BI. Онемогућавање окна филтера не ограничава приступ подацима и може се поново омогућити помоћу кода JavaScript библиотеке.
  • Powerbi-client JavaScript библиотека је подржана само за PowerBI Embedded ток.
$(document).ready(function () {
    var embedContainer = $(".powerbi")[0];
    if (embedContainer) {
        var report = powerbi.get(embedContainer);
        report.on("loaded", function () {
            report.updateSettings({
                panes: {
                    filters: {
                        visible: false
                    },
                    pageNavigation: {
                        visible: false
                    }
                }
            }).catch(function (errors) {
                console.log(errors);
            });
        })
    }
});

Да бисте додали JavaScript компоненту на веб-страницу:

  1. Отворите апликацију за управљање порталима.
  2. У левом окну изаберите Веб-странице.
  3. Изаберите веб-страницу која садржи Power BI извештај или контролну таблу.
  4. Изаберите картицу Напредно.
  5. Копирајте и залепите JavaScript у одељак Прилагођени JavaScript.
  6. Изаберите Саве & Цлосе.

Хајде сада да разумемо примере JavaScript операција и различите опције.

Пронађите референцу на HTML уграђеног извештаја

Пронађите референцу на HTML уграђеног извештаја.

var embedContainer = $(".powerbi")[0];

Још информација: Пронађите референцу на постојећу Power BI компоненту на основу елемента који садржи

Пронађите референцу на уграђени извештај

var report = powerbi.get(embedContainer);

Рад са Power BI окнима

Можете да користите поставке за окна за рад са Power BI окнима на веб-страници. На пример, можете да користите подешавање филтера да бисте сакрили или приказали окно или да радите са подешавањем навигације по страници.

У наставку се налази пример за уклањање окна филтера:

report.updateSettings({
            panes: {
                filters :{
                    visible: false
                }
            }
        }).catch(function (errors) {
            console.log(errors);
        });

У наставку се налази пример за рад са навигацијом по страници и филтерима:

report.updateSettings({
            panes: {
                filters :{
                    visible: false
                },
                pageNavigation:{
                    visible: false
                }
            }
        }).catch(function (errors) {
            console.log(errors);
        });

Још информација: Подешавања ажурирања и Конфигурација уграђивања – Подешавања

Руковање догађајима

Уграђена компонента може да емитује догађаје након позива на завршетак извршене команде. На пример, у наставку је узорак за догађај dataSelected.

//Report.off removes a given event listener if it exists
    report.off("dataSelected");
//Report.on will add an event list
    report.on('dataSelected', function(event){
        console.log('Event - dataSelected:');
        console.log(event.detail);
    })

Још информација: Руковање догађајима

Погледајте и