Dodawanie raportu lub pulpitu nawigacyjnego usługi Power BI do strony internetowej w portalu

Uwaga

  • W październiku 2022 roku portale usługi Power Apps zostały przekształcone w usługę Power Pages.
  • Ten temat dotyczy starszych możliwości. Najnowsze informacje można znaleźć w dokumentacji usługi Microsoft Power Pages.

Porada

W tym artykule opisano sposób dodawania raportu Power BI lub pulpitu nawigacyjnego przy użyciu tagu Liguid powerbi. Aby dodać składnik Power BI na stronie sieci Web w portalu za pomocą Portals Studio, wybierz opcję Dodawanie składnika Power BI do strony sieci Web za pomocą Portals Studio.

Możesz dodać raport Power BI lub pulpit nawigacyjny do strony sieci Web w portalu przy użyciu tagu Liquid powerbi. Użyj tagu powerbi w polu Kopia na stronie sieci Web lub w polu Źródło w szablonie sieci Web.

Jeśli dodajesz raport Power BI lub pulpit nawigacyjny utworzony w nowym obszarze roboczym w Power BI, musisz określić typ uwierzytelniania jako powerbiembedded w tagu Liquid powerbi.

Uwaga

  • Jeśli Microsoft Entra ID określono jako typ uwierzytelniania w tagu Liquid powerbi, należy udostępnić go użytkownikom przed dodaniem bezpiecznego raportu lub pulpitu nawigacyjnego Power BI do strony sieci Web w portalu. Więcej informacji: Udostępnij obszar roboczy Power BI i Udostępnij pulpit nawigacyjny Power BI i raport.
  • powerbiembedded obsługuje pulpity nawigacyjne Power BI i raporty, które łączą się z Azure Analysis Services. Możesz również użyć właściwości „customdata” w płynnym kodzie, aby przekazać wartość właściwości CustomData.
  • Raporty Power BI podzielone na strony obecnie nie są obsługiwane.

Na przykład:

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

Aby dowiedzieć się, jak uzyskać ścieżkę pulpitu nawigacyjnego i identyfikator kafelka pulpitu nawigacyjnego, zapoznaj się z sekcjami w dalszej części tego artykułu.

Korzystanie z pulpitu nawigacyjnego lub raportu łączącego się z Azure Analysis Services

Możesz dodać tag powerbi Liquid z pulpitem nawigacyjnym lub raport, który łączy się z usługami Azure Analysis Services.

Aby dodać pulpit nawigacyjny lub raport łączący z usługami Azure Analysis Services, użyj parametru CustomData w parametrach połączenia.

Na przykład:

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

Opcjonalny tag customdata można skonfigurować jako ciąg lub generować dynamicznie na podstawie atrybutu obiektu, używając okresu (".") lub kwadratowych prostokątów ("[]") w celu oddzielania obiektów i atrybutów między dwiema parami konfiguracyjną.

Przykłady:

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

Ponieważ tag customdata zwraca ciąg znaków, może być konieczne przekonwertowanie tego ciągu na liczbę całkowitą w zapytaniu języka DAX.

Ważne

Usługi i role Azure Analysis Services (RLS)

Znacznik ról jest opcjonalny w przypadku Azure Analysis Services raportów i pulpitów nawigacyjnych. Jeśli nie jest używana, role są domyślnie przypisywane do aplikacji w Azure Analysis Services.

Jednak ten tag może okazać się niezbędny do określenia określonej roli (lub ról) spośród kilku dostępnych ról i może być nadal wymagany w przypadku korzystania z zabezpieczeń na poziomie wiersza.

Role są zawarte w Azure Analysis Services, a nie w samym raporcie, w przeciwieństwie do innych typów raportów Power BI.

  • Brak ról w kodzie Liquid.

    Jeśli w kodzie Liquid nie podano żadnej roli, rola Azure Analysis Services zostanie określona na podstawie ról, do których aplikacja ma dostęp, i będzie filtrować wyniki na podstawie danych niestandardowych względem zapytania DAX w rolach. Oznacza to, że wszystkie dostępne role będą łączyć swoje dostępy, ale nadal będą filtrować, jeśli dostarczone dane niestandardowe są odpowiednie. Ten scenariusz będzie najczęściej dotyczył raportów usług Azure Analysis Services lub pulpitów nawigacyjnych z jednym kafelkiem.

  • Zapewnienie ról w kodzie Liquid.

    Role usług Azure Analysis Services można podać w kodzie Liquid, podobnie jak role RLS. Korzystanie z tych ról może być wymagane, jeśli dostępnych jest wiele ról, ale chcesz użyć określonych ról dla strony. Podczas używania ról w ciągu połączenia należy określić rolę Azure Analysis Services połączenia. Na przykład pulpity nawigacyjne z wieloma kafelkami, które Azure Analysis Services kafelki RLS.

    W przypadku używania kafelków Azure Analysis Services pulpitu nawigacyjnego należy wziąć pod uwagę następujące kwestie:

    • Jeśli kafelek Azure Analysis Services jest używany na pulpicie nawigacyjnym w innych kafelkach wymagających ról, Azure Analysis Services musi zostać dodana do listy ról.
    • Wiele kafelków z różnych usług Azure Analysis Services źródłowych może być używanych we własnych rolach, ale dane niestandardowe muszą być takie same dla każdego, a w kodzie źródłowym nie można używać wielu niestandardowych wartości danych. Tag Customdata i parametr customdata dla parametru EffectiveIdentity mają tylko wartość ciągu.

Pobierz ścieżkę pulpitu nawigacyjnego lub raportu

  1. Zaloguj się do usługi Power BI.

  2. Otwórz pulpit nawigacyjny lub raport, który ma zostać osadzony w portalu.

  3. Skopiuj adres URL w pasku adresu.

    Pobierz ścieżkę pulpitu nawigacyjnego Power BI.

Pobierz identyfikator kafelka pulpitu nawigacyjnego

  1. Zaloguj się do usługi Power BI.

  2. Otwórz pulpit nawigacyjny z którego chcesz osadzić kafelek w portalu.

  3. Wskaż kafelek, wybierz Więcej opcji, a następnie wybierz Otwórz w trybie fokus.

    Otwórz kafelek pulpitu nawigacyjnego Power BI w trybie fokusu.

  4. Skopiuj identyfikator kafelka z adresu URL w pasku adresu. Identyfikator kafelka to wartość po /tiles/.

    Identyfikator kafelka pulpitu nawigacyjnego Power BI.

Jak używać biblioteki JavaScript powerbi-client w portalach

Możesz używać biblioteki JavaScript powerbi-client na potrzeby raportów lub pulpitów nawigacyjnych usługi Power BI Embedded w swoim portalu. Więcej informacji na temat biblioteki języka JavaScript klienta powerbi można znaleźć w Power BI w języku JavaScriptscript.

Poniżej przedstawiono przykładowy kod JavaScript, który służy do aktualizowania ustawień raportu lub obsługi zdarzeń. Ten przykładowy powoduje wyłączenie okienka filtrowania, wyłączenie nawigacji między stronami i włączenie zdarzenia dataSelected.

Ważne

  • Aby wyłączyć lub włączyć okienko filtrowania, użyj biblioteki języka JavaScript klienta Power BI. Aby ograniczyć dostęp do danych lub skonfigurować zabezpieczenia, należy użyć zabezpieczeń na poziomie wiersza (RLS) w Power BI. Wyłączenie okienka filtru nie ogranicza dostępu do danych i można go ponownie włączyć, korzystając z kodu biblioteki JavaScript.
  • Biblioteka JavaScript powerbi-client jest obsługiwana tylko przez przepływ 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);
            });
        })
    }
});

Aby dodać niestandardowy kod JavaScript do strony sieci Web:

  1. Otwórz aplikację Zarządzanie portalem.
  2. W lewym okienku wybierz Strony internetowe.
  3. Wybierz stronę sieci Web zawierającą raport Power BI lub pulpit nawigacyjny.
  4. Wybierz kartę Zaawansowane.
  5. Skopiuj skrypt JavaScript i wklej go w sekcji Niestandardowy kod JavaScript.
  6. Zaznacz Zapisz i zamknij.

Zobaczmy teraz przykładowe operacje języka JavaScript i różne opcje.

Pobranie odwołania do osadzonego raportu HTML

Pobranie odwołania do osadzonego raportu HTML.

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

Więcej informacji: Pobranie odwołania do istniejącego składnika Power BI z podanym elementem zawierającym

Pobranie odwołania do osadzonego raportu

var report = powerbi.get(embedContainer);

Praca z okienkami Power BI

Możesz użyć ustawień okienek do pracy z okienkami usługi Power BI na stronie sieci Web portali. Można na przykład użyć ustawienia filtrów w celu ukrycia lub pokazania okienka albo pracy z ustawieniem nawigacji strony.

Poniżej znajduje się przykładowy sposób usuwania okienka filtrów:

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

Poniżej przedstawiono przykładowy sposób działania nawigacji między stronami i filtrami:

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

Więcej informacji: Aktualizowanie ustawień i Konfiguracja osadzania — ustawienia

Obsługa zdarzeń

Składnik osadzony może emitować zdarzenia w momencie wywołania ukończenia wykonanego polecenia. Np. poniżej znajduje się przykładowy kod dla zdarzenia 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);
    })

Więcej informacji: Obsługa zdarzeń

Zobacz także

Uwaga

Czy możesz poinformować nas o preferencjach dotyczących języka dokumentacji? Wypełnij krótką ankietę. (zauważ, że ta ankieta jest po angielsku)

Ankieta zajmie około siedmiu minut. Nie są zbierane żadne dane osobowe (oświadczenie o ochronie prywatności).