Udostępnij za pośrednictwem


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

Napiwek

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 internetowej w witrynie przy użyciu studio projektowania, przejdź do sekcji Dodawanie składnika Power BI.

Możesz dodać raport lub pulpit nawigacyjny usługi Power BI do strony internetowej 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] }}

W miarę jak tag customdata zwraca ciąg, może okazać się konieczne przekonwertowanie tego ciągu na liczbę całkowitą w zapytaniu 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.

Ten tag może jednak okazać się niezbędny do określenia określonej roli (lub ról) w kilku dostępnych rolach 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, gdy 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 witrynie internetowej.

  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 koncentracji uwagi.

  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 Power Pages

Możesz używać biblioteki JavaScript powerbi-client na potrzeby raportów lub pulpitów nawigacyjnych usługi Power BI Embedded w swojej witrynie internetowej. 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

Do pracy z okienkami Power BI na stronie internetowej można użyć ustawień okienek. 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 też