Afegir un informe o un escriptori digital Power BI a una pàgina web d'un portal

Suggeriment

En aquest article s'explica com s'afegeix un informe Power BI o un escriptori digital mitjançant l'etiqueta Powerbi Liquid. Per afegir Power BI component d'una pàgina web del portal mitjançant els portals Studio, aneu a Afegeix un component Power BI a una pàgina web que utilitza els portals Studio.

Podeu afegir un informe o un escriptori digital Power BI a una pàgina web del portal mitjançant l'etiqueta powerbi Liquid. Podeu afegir l'etiqueta powerbi al camp Copia en una pàgina web o al camp d'Origen en una plantilla web.

Si esteu afegint un informe Power BI o un escriptori digital creats a l'àrea de treball nova de Power BI, heu d'especificar el tipus d'autenticació com a powerbiembeddddded a l'etiqueta powerbi Liquid.

Nota

Per exemple:

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

Per obtenir informació sobre com obtenir un camí de l'escriptori digital i l'identificador de la peça de l'escriptori digital, consulteu les seccions més endavant en aquest article.

Utilitzar un escriptori digital o un informe que es connecti als serveis d'anàlisi de l'Azure

Podeu afegir l'etiqueta Liquid powerbi amb un escriptori digital o un informe que es connecti als serveis d'anàlisi de l'Azure.

Per afegir un escriptori digital o un informe que es connecti als serveis d'anàlisi de l'Azure, utilitzeu el paràmetre CustomData a la cadena de connexió.

Per exemple:

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

L'etiqueta opcional customdata es pot configurar com una cadena, o generar-se dinàmicament basant-se en l'atribut d'un objecte, utilitzant un punt (".") o claudàtors ("[]") per separar entre l'objecte i l'atribut, entre dos parells de claus.

Exemples:

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

Com que l'etiqueta customdata retorna una cadena, pot ser necessari convertir aquesta cadena en un enter de la consulta DAX.

Important

Serveis i funcions d'anàlisi de l'Azure (RLS)

L'etiqueta de funcions és opcional per als informes i els escriptoris digitals basats en els serveis d'anàlisi de l'Azure. Quan no s'utilitza, la funció per defecte és la funció a la qual s'assigna l'aplicació als serveis d'anàlisi de l'Azure.

No obstant això, aquesta etiqueta pot arribar a ser necessària per especificar una funció (o funcions) determinada entre diverses funcions disponibles, i encara pot ser necessària quan s'utilitza la seguretat de nivell de fila.

Les funcions estan contingudes a la base de dades de l'Azure Analysis Services i no a l'informe en si, a diferència d'altres tipus d'informes Power BI.

  • No proporcionar cap funció en el codi Liquid.

    Si no es proporciona cap funció al codi Liquid, la funció dels Serveis d'anàlisi de l'Azure estarà determinada per les funcions a les quals té accés l'aplicació i filtrarà els resultats basant-se en les dades personalitzades proporcionades contra la consulta DAX a les funcions. És a dir, totes les funcions disponibles combinaran els seus accessos, però encara es filtraran si les dades personalitzades proporcionades són rellevants. Aquesta situació sovint serà el cas dels informes dels Serveis d'anàlisi de l'Azure o dels escriptoris digitals d'una sola peça.

  • Proporcionar funcions en el codi Liquid.

    Les funcions dels Serveis d'anàlisi de l'Azure es poden proporcionar en el codi Liquid, similar a les funcions RLS. L'ús d'aquestes funcions pot ser necessari quan hi ha diverses funcions disponibles, però voleu utilitzar funcions específiques per a la pàgina. Quan s'utilitzen funcions de la cadena de connexió, és imprescindible especificar la funció dels Serveis d'anàlisi de l'Azure. Per exemple, escriptoris digitals de diverses peces que utilitzin peces dels Serveis d'anàlisi de l'Azure amb peces RLS.

    Les consideracions següents s'apliquen quan s'utilitzen peces dels Serveis d'anàlisi de l'Azure en un escriptori digital:

    • Si una peça dels Serveis d'anàlisi de l'Azure s'utilitza en un escriptori digital amb altres peces que requereixen funcions, la funció dels Serveis d'anàlisi de l'Azure s'ha d'afegir a la llista de funcions.
    • Es poden utilitzar diverses peces de diferents orígens dels Serveis d'anàlisi de l'Azure amb les seves pròpies funcions, però les dades personalitzades han de ser les mateixes per a cadascuna i no es poden utilitzar diversos valors de dades personalitzats al codi Liquid. L'etiqueta customdata i el paràmetre customdata per a EffectiveIdentity només tenen un valor de cadena.

Obtenir el camí d'un escriptori digital o informe

  1. Inicia sessió a Power BI.

  2. Obriu l'escriptori digital o l'informe que voleu inserir al seu portal.

  3. Copieu l'adreça URL de la barra d'adreces.

    Obteniu el camí d'un tauler de Power BI.

Obtenir l'ID d'una peça de l'escriptori digital

  1. Inicia sessió a Power BI.

  2. Obriu l'escriptori digital des del qual voleu inserir una peça al vostre portal.

  3. Trieu la peça, seleccioneu Més opcions i, a continuació, seleccioneu Obert en mode d'enfocament.

    Obre Power BI peça de l'escriptori digital en mode d'enfocament.

  4. Copieu l'identificador de la peça de l'adreça URL a la barra d'adreces. L'identificador de la peça és el valor que hi ha després de /tiles/.

    Power BI identificador de mosaic de l'escriptori digital.

Com utilitzar la biblioteca JavaScript de powerbi-client als portals

Podeu utilitzar la biblioteca JavaScript powerbi-client mentre inseriu Power BI informes o escriptoris digitals al vostre portal. Per obtenir més informació sobre la biblioteca JavaScript powerbi-client, vegeu el Power BI wiki de JavaScript.

A continuació es mostra un JavaScript d'exemple per actualitzar la configuració de l'informe o per gestionar incidències. Aquesta mostra inhabilita la subfinestra de filtres, inhabilita la navegació per pàgines i habilita la incidència dataSelected.

Important

Utilitzeu la biblioteca JavaScript de powerbi-client per inhabilitar o habilitar la subfinestra de filtres. Tanmateix, si voleu restringir l'accés a les dades o configurar la seguretat, utilitzeu la seguretat de nivell de fila (RLS) amb Power BI. Inhabilitar la subfinestra de filtres no restringeix l'accés a les dades i es pot tornar a habilitar mitjançant el codi de la biblioteca JavaScript.

$(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);
            });
        })
    }
});

Per afegir JavaScript personalitzat a una pàgina web:

  1. Obriu l'aplicació Administració del portal.
  2. Seleccioneu Pàgines web des de la subfinestra esquerra.
  3. Seleccioneu la pàgina web que conté l'informe o l'escriptori digital Power BI.
  4. Seleccioneu la pestanya Avançat.
  5. Copia i enganxa el JavaScript dins de la secció JavaScript personalitzat.
  6. Seleccioneu Desa i tanca.

Ara, comprenguem les operacions de JavaScript i les diferents opcions de mostra.

Obtenir una referència a l'informe HTML incrustat

Obtenir una referència a l'informe HTML incrustat.

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

Més informació: Obtenir una referència a un component Power BI existent donat l'element que conté

Obtenir una referència a l'informe incrustat

var report = powerbi.get(embedContainer);

Treballar amb panells de Power BI

Podeu utilitzar la configuració de les subfinestres per treballar amb subfinestres Power BI d'una pàgina web del portal. Per exemple, podeu utilitzar la configuració de filtres per amagar o mostrar la subfinestra o treballar amb la configuració de navegació de pàgina.

A continuació hi ha una mostra per suprimir la subfinestra de filtres:

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

A continuació hi ha una mostra per treballar tant amb la navegació de pàgina com amb els filtres:

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

Més informació: Actualitzar la configuració i Incrustar la configuració - Configuració

Gestionar incidències

El component incrustat pot emetre incidències quan invoqui una finalització d'una ordre executada. Per exemple, a continuació es mostra un exemple per a la incidència 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);
    })

Més informació: Gestionar incidències

Consulteu també