Einbetten eines paginierten Berichts
Trinkgeld
Versuchen Sie, einen paginierten Bericht einzubetten oder mit unseren Client-APIs im abschnitt Erkunden Sie unsere APIs Abschnitt des Power BI Embedded Analytics Playground.
In diesem Artikel werden die Schritte zum Einbetten eines paginierten Berichts in Ihre Anwendung behandelt. Erfahren Sie mehr über paginierte Berichte in Was sind paginierte Berichte in Power BI Premium?.
So betten Sie einen paginierten Bericht ein
Wenn Sie Power BI-Inhalte in eine App einbetten, definieren Sie den Inhalt und geben dessen Einstellungen in einem Konfigurationsobjekt an. Anschließend übergeben Sie dieses Objekt an die API.
Wenn Sie einen paginierten Bericht einbetten, verwenden Sie ein Konfigurationsobjekt vom Typ IPaginatedReportLoadConfiguration
:
export interface IPaginatedReportLoadConfiguration {
accessToken: string;
id: string;
embedUrl?: string;
settings?: IPaginatedReportSettings;
tokenType?: TokenType;
type?: string;
parameterValues?: IPaginatedReportParameter[];
}
Diese Schnittstelle enthält die folgenden Eigenschaften:
accessToken – Das Token, das Ihnen Zugriff auf die Power BI-Daten gewährt, die Sie einbetten. Weitere Informationen zu Zugriffstoken finden Sie unter Grundlegendes zu den verschiedenen Einbettungslösungen.
embedUrl- – Die URL des Berichts, den Sie einbetten. Diese URL wird zur Quelle des HTML-iframe-Elements, das den eingebetteten Bericht enthält. Insbesondere weist die API die URL dem
src
Attribut des iframe zu. Sie können eine Berichts-API- verwenden, um diese URL abzurufen. Zwei Beispiele sind:Es wird empfohlen, Berichtsparameter mithilfe der unten beschriebenen
parameterValues
Eigenschaft an den Bericht zu übergeben. Sie können jedoch auch Parameter an den Bericht übergeben, indem Sie die Abfragezeichenfolge am Ende der Einbettungs-URL hinzufügen. Weitere Informationen zum Übergeben von URL-Parametern in paginierten Berichten. Beispiele für Übergeben von Parametern an eine URL-.id – Die ID des Power BI-Berichts, den Sie einbetten.
Hostname - Der Standardwert
hostname
ist app.powerbi.com. Wenn Sie eine souveräne Cloud verwenden, geben Sie hier die URL an. Wenn Sie einen Wert fürembedURL
angegeben haben, wird derhostname
ignoriert.Einstellungen - Ein Konfigurationsobjekt vom Typ IPaginatedReportSettings. Dieses Objekt gibt Informationen zur Darstellung des Berichtsparameterbereichs an. Der Parameterbereich ist die Leiste unterhalb der Aktionsleiste, die erweitert oder ausgeblendet werden kann.
Sie können den Parameterbereich ein- oder ausblenden, indem Sie auf der Aktionsleiste auf die Schaltfläche Parameter klicken. Diese Schaltfläche ist standardmäßig verfügbar. Wenn Sie jedoch die
enabled
Eigenschaft des Panels so konfigurieren, dass siefalse
ist, ist die Schaltfläche Parameter nicht verfügbar.Standardmäßig reduziert die API den Parameterbereich. Wenn Sie die
expanded
Eigenschaft des Panels auftrue
festlegen, lädt die API den Bericht mit diesem Panel erweitert.Dieser Code zeigt eine Möglichkeit zum Konfigurieren der
settings
-Eigenschaft:settings: { commands: { parameterPanel: { enabled: true, expanded: true } } }
tokenType – Die Art des Tokens, das Ihnen Zugriff auf die Power BI-Daten ermöglicht, die Sie einbetten.
- Verwenden Sie
models.TokenType.Aad
, wenn Sie für Ihre Organisation einbetten (Benutzer besitzen Daten). - Verwenden Sie
models.TokenType.Embed
, wenn Sie ihre Kunden einbetten (App besitzt Daten).
Weitere Informationen finden Sie unter Grundlegendes zu den verschiedenen Einbettungslösungen.
- Verwenden Sie
parameterValues – Ein Konfigurationsobjekt vom Typ
IPaginatedReportParameter
. Legen Sie die Berichtsparameter mithilfe dieser Eigenschaft fest. Diese Methode verwendet das JavaScript SDK und ist die bevorzugte Methode zum Übergeben von Berichtsparametern. Zum Beispiel:parameterValues: [ {name: "State", value: "WA"}, {name: "City", value: "Seattle"}, {name: "City", value: "Bellevue"}, {name: "City", value: "Redmond"} ]
Diese Methode kann nur verwendet werden, um Berichtsparameter (parameter mit einem URL-Präfix
rp:
) zu übergeben und nicht rdl-Parameter (mit dem URL-Präfixrdl:
).
Beispiel
Das folgende Beispiel zeigt, wie Sie einen paginierten Bericht einbetten:
// Set up the configuration object that determines what to embed and how to embed it.
let embedConfiguration = {
accessToken: anAccessToken,
embedUrl: anEmbedUrl,
uniqueId: aReportId,
tokenType: aTokenType,
type: 'report',
datasetBindings: [{
sourceDatasetId: "originalDatasetId",
targetDatasetId: "notOriginalDatasetId"
}]
};
// Get a reference to the HTML element that contains the embedded report.
let embedContainer = $('#embedContainer')[0];
// Embed the report.
let report = powerbi.embed(embedContainer, embedConfiguration);
Stellen Sie sicher, dass Sie alle DatasetIds einschließen, die für die Bindung im Multiressourceneinbettungstokenverwendet werden.
Überlegungen und Einschränkungen
- Informationen zur Verwendung der dynamischen Bindung finden Sie unter Dynamische Bindung von Datasets an einen paginierten Bericht.
- Die bootstrapped-Methode wird für paginierte Berichte nicht unterstützt.
- Mehrwertige Parameter werden beim Einbetten eines paginierten Berichts nicht unterstützt.
- Die
parameterValues
-Eigenschaft kann nur für Berichtsparameter verwendet werden. Er kann nicht für RDL-Parameter verwendet werden. - Das Einbetten eines paginierten Berichts mit einem Echtzeit-Dataset (Push-Dataset) wird nicht unterstützt.