Einbetten eines Berichtsvisuals

Tipp

Versuchen Sie, ein Berichtsvisual einzubetten, oder experimentieren Sie mit unseren Client-APIs im Abschnitt Erkunden unserer APIs des Power BI Embedded Analytics Playground.

In diesem Artikel werden die Schritte zum Einbetten eines Visuals in Ihre Anwendung beschrieben. Erfahren Sie mehr über Visuals in Visuals in Power BI.

Einbetten eines Visuals

Wenn Sie Power BI-Inhalte in eine App einbetten, verwenden Sie ein Konfigurationsobjekt, um den einzubettenden Inhalt zu definieren und die Einstellungen des Inhalts anzugeben. Anschließend übergeben Sie dieses Objekt an die API.

Wenn Sie ein Visual einbetten, verwenden Sie ein Konfigurationsobjekt vom Typ IVisualLoadConfiguration:

interface IVisualLoadConfiguration {
    accessToken?: string;
    embedUrl?: string;
    id?: string;
    pageName: string;
    tokenType?: models.TokenType;
    type: string;
    visualName: string;
}

Diese Schnittstelle enthält die folgenden Eigenschaften:

  • accessToken – Das Token, das Ihnen Zugriff auf die Power BI-Daten ermöglicht, die Sie einbetten. Weitere Informationen zu Zugriffstoken finden Sie unter Grundlegendes zu den verschiedenen Einbettungslösungen .

  • embedUrl – Die URL des Berichts, der das Visual enthält, das Sie einbetten. Diese URL wird zur Quelle des HTML-Elements iframe , das das eingebettete Visual enthält. Insbesondere weist die API die URL dem src -Attribut des iframezu. Sie können eine Berichts-API verwenden, um diese URL abzurufen. Zwei Beispiele:

  • id – Die ID des Power BI-Berichts, der das Visual enthält, das Sie einbetten.

  • pageName – Der Name der Seite, die das Visual enthält, das Sie einbetten. Sie können die Report getPages-Methode verwenden, um die Seiten in einem Bericht abzurufen.

  • tokenType – Die Art des Tokens, mit dem Sie auf die Power BI-Daten zugreifen können, die Sie einbetten.

    • Verwenden Sie models.TokenType.Aad , wenn Sie für Ihre organization einbetten (der Benutzer besitzt die Daten).
    • Verwenden Sie models.TokenType.Embed , wenn Sie für Ihre Kunden einbetten (die App besitzt die Daten).

    Weitere Informationen finden Sie unter Grundlegendes zu den verschiedenen Einbettungslösungen .

  • type – Die Art des Inhalts, den Sie einbetten. Verwenden Sie 'visual' für ein Visual.

  • visualName – Der Name des Visuals, das Sie einbetten. Sie können die Page getVisuals-Methode verwenden, um die Visuals auf einer Seite abzurufen.

Beispiel

Im folgenden Beispiel wird gezeigt, wie Sie ein einzelnes Visual einbetten:

// Set up the configuration object that determines what to embed and how to embed it.
let embedConfiguration = {
    accessToken: anAccessToken,
    embedUrl: anEmbedUrl,
    id: aReportId,
    pageName: aPageName,
    tokenType: aTokenType,
    type: 'visual',
    visualName: aVisualName
};
 
// Get a reference to the HTML element that contains the embedded report.
let embedContainer = $('#embedContainer')[0];
 
// Embed the visual.
let visual = powerbi.embed(embedContainer, embedConfiguration);

Filter

Standardmäßig wendet die updateFilters API Filter auf visueller Ebene an, wenn ein einzelnes Berichtsvisual eingebettet wird. Dies kann zu einem Konflikt mit Filtern führen, die im Einbettungskonfigurationsobjekt angewendet werden, da diese auf Berichtsebene angewendet werden. Um dieses Problem zu beheben, können Sie die Filterebene mit der API festlegen:

await visual.updateFilters(FiltersOperations.Add, filters, FiltersLevel.Report);

Weitere Informationen zu Filtern finden Sie unter Steuern von Berichtsfiltern.

Nächste Schritte