Anwenden von Berichtsdesigns
Power BI Berichtsdesigns ihnen das Anwenden von Entwurfsänderungen auf den gesamten Bericht ermöglichen. Sie können z. B. Ihre Unternehmensfarben einschließen und Ihre Symbolsätze ändern. Wenn Sie ein Berichtsdesign anwenden, verwenden alle visuellen Elemente in Ihrem Bericht die Farben und Formatierungen aus dem ausgewählten Design als Standard. Weitere Informationen zu Designeinstellungen und deren Gestaltung finden Sie im JSON-Dateiformat des Berichtsdesigns.
Sie können einen Bericht mit einem darauf angewendeten Design speichern und veröffentlichen. Das angewendete Design ist das Standarddesign für diesen Bericht, wenn es in Power BI-Dienst oder in der eingebetteten Power BI-Analyse geladen wird.
Entwickler, die Power BI eingebettete Analysen verwenden, können auch einen Bericht mit einem benutzerdefinierten Design einbetten, das anstelle des Standarddesigns für den Bericht angewendet wird. Wenn Sie ein Design auf diese Weise anwenden, wird derselbe Bericht mit verschiedenen Designs entsprechend ihren Einstellungen auf verschiedene Benutzer geladen.
Berichtsdesignobjekt
In diesem Abschnitt wird das Berichtsdesignobjekt beschrieben, das zum Darstellen von Designs verwendet wird. Ein IReportTheme
Objekttyp kann an die eingebettete Konfiguration übergeben werden.
interface IEmbedConfiguration extends IEmbedConfigurationBase {
...
theme?: models.IReportTheme;
}
Das Berichtsdesignobjekt sollte über einen einzelnen Parameter mit dem Namen themeJson
verfügen. Dieses Feld sollte das JSON-Objekt enthalten, das die Designeinstellungen darstellt. Weitere Informationen finden Sie im JSON-Dateiformat des Berichtsdesigns Seite.
interface IReportTheme {}
interface ICustomTheme extends IReportTheme {
themeJson: any;
}
Anwenden eines Designs auf einen Bericht
Das angewendete Design kann auch geändert werden, nachdem der Bericht geladen wurde. Wenn Sie das Design nach dem Laden des Berichts anwenden, kann der Endbenutzer ein Design aus einer Liste auswählen und die auf den Bericht angewendeten Formatvorlagenänderungen sofort anzeigen, ohne den Bericht neu zu laden.
Anwenden eines Designs beim Laden
Dieses Beispiel ist nützlich, wenn Sie ein benutzerdefiniertes Design beim Laden des Berichts anwenden möchten.
// Parse the theme JSON file into an object
let themeJsonObject = parseJsonfile(path);
let embedConfig = {
…
theme: {
themeJson: themeJsonObject
}
};
let report = powerbi.embed(embedContainer, embedConfig);
Design zur Laufzeit anwenden
Die apply-Methode ist nützlich, wenn Sie das Design ändern möchten, nachdem der Bericht geladen wurde, ohne den Bericht neu zu laden.
Die Power BI Client Report Klasse definiert die applyTheme
Methode wie:
applyTheme(theme: models.IReportTheme): Promise<void>
Die applyTheme
-API ändert das Design, das zur Laufzeit auf den Bericht angewendet wird.
...
// Parse the theme JSON file into an object
let themeJsonObject = parseJsonfile(path);
// Apply the theme
report.applyTheme({ themeJson: themeJsonObject });
Anwenden eines Designs beim Erstellen eines Berichts
Ein neuer eingebetteter Bericht kann mit einem darauf angewendeten Design erstellt werden. Neue visuelle Elemente, die dem Bericht hinzugefügt werden, respektieren den Designstil. Siehe auch die Erstellen, Bearbeiten und Speichern eines eingebetteten Berichts Seite.
Dieses Beispiel ist nützlich, wenn Sie ein benutzerdefiniertes Design auf einen neuen Bericht anwenden möchten.
// Parse the theme JSON file into an object
let themeJsonObject = parseJsonfile(path);
let embedCreateConfiguration = {
…
theme: {
themeJson: themeJsonObject
}
};
let report = powerbi.createReport(embedContainer, embedCreateConfiguration);
Anmerkung
parseJsonfile
ist eine Funktion, die im Anwendungscode implementiert werden muss und nicht Teil des SDK ist.
Zurücksetzen eines Berichtsdesigns
Die Reset-Methode ist nützlich, wenn Sie das Berichtsdesign auf das Standarddesign zurücksetzen möchten, aber nicht über die JSON-Designdatei verfügen.
Die Power BI Client Report-Klasse definiert die resetTheme
Methode wie:
resetTheme(): Promise<void>
Durch Aufrufen der resetTheme
-API wird das Standarddesign des Berichts zurückgegeben.
// Apply the theme
report.resetTheme();
Überlegungen und Einschränkungen
- Die oben beschriebene
applyTheme
-API setzt das Standarddesign vollständig mit der neuen JSON-Datei außer Kraft. Die API erweitert die Konfiguration des Standarddesigns nicht. - Es gibt ein paar Male, wenn das Anwenden von Designs die visuellen Elemente im Bericht nicht wie erwartet ändert. Weitere Informationen finden Sie unter Situationen, in dem Berichtsdesignfarben nicht an Ihren Berichtenbleiben.
- Sie können die API nicht verwenden, um ein Design anzuwenden und gleichzeitig eine Kontraststufe festzulegen. Wenn Sie beide Eigenschaften konfigurieren, verwendet die API die von Ihnen angegebene Kontraststufe, ignoriert jedoch die Designeinstellung.