Stosowanie motywów raportów
Motywy raportów usługi Power BI umożliwiają stosowanie zmian projektu do całego raportu. Możesz na przykład uwzględnić kolory firmowe i zmienić zestawy ikon. Po zastosowaniu motywu raportu wszystkie wizualizacje w raporcie używają kolorów i formatowania z wybranego motywu jako domyślnych. Aby uzyskać więcej informacji na temat ustawień motywu i sposobu ich projektowania, zobacz format pliku JSON motywu raportu.
Możesz zapisać i opublikować raport z zastosowanym motywem. Zastosowany motyw jest motywem domyślnym dla tego raportu, gdy jest ładowany w usłudze Power BI lub osadzonej analizie usługi Power BI.
Deweloperzy korzystający z osadzonej analizy usługi Power BI mają również możliwość osadzania raportu z motywem niestandardowym zastosowanym zamiast motywu domyślnego raportu. Zastosowanie motywu w ten sposób powoduje załadowanie tego samego raportu z różnymi motywami do różnych użytkowników zgodnie z ich ustawieniami.
Obiekt motywu raportu
W tej sekcji opisano obiekt motywu raportu używany do reprezentowania motywów. Typ obiektu IReportTheme
można przekazać do konfiguracji osadzonej.
interface IEmbedConfiguration extends IEmbedConfigurationBase {
...
theme?: models.IReportTheme;
}
Obiekt motywu raportu powinien mieć jeden parametr o nazwie themeJson
. To pole powinno zawierać obiekt JSON reprezentujący ustawienia motywu. Aby uzyskać więcej informacji, zobacz stronę Format pliku JSON motywu raportu.
interface IReportTheme {}
interface ICustomTheme extends IReportTheme {
themeJson: any;
}
Stosowanie motywu do raportu
Zastosowany motyw można również zmienić po załadowaniu raportu. Po zastosowaniu motywu po załadowaniu raportu użytkownik końcowy może wybrać motyw z listy i zobaczyć zmiany stylu zastosowane do raportu natychmiast bez ponownego załadowania.
Stosowanie motywu podczas ładowania
Ten przykład jest przydatny, jeśli chcesz zastosować motyw niestandardowy podczas ładowania raportu.
// Parse the theme JSON file into an object
let themeJsonObject = parseJsonfile(path);
let embedConfig = {
…
theme: {
themeJson: themeJsonObject
}
};
let report = powerbi.embed(embedContainer, embedConfig);
Stosowanie motywu w czasie wykonywania
Metoda apply jest przydatna, jeśli chcesz zmienić motyw po załadowaniu raportu bez ponownego załadowania raportu.
Klasa raportów klienta usługi Power BI definiuje metodę applyTheme
jako:
applyTheme(theme: models.IReportTheme): Promise<void>
Interfejs API applyTheme
zmienia motyw zastosowany do raportu w czasie wykonywania.
...
// Parse the theme JSON file into an object
let themeJsonObject = parseJsonfile(path);
// Apply the theme
report.applyTheme({ themeJson: themeJsonObject });
Stosowanie motywu podczas tworzenia raportu
Można utworzyć nowy osadzony raport z zastosowanym motywem. Nowe wizualizacje dodane do raportu są zgodne ze stylem motywu. Zobacz również stronę tworzenia, edytowania i zapisywania osadzonego raportu
Ten przykład jest przydatny, jeśli chcesz zastosować motyw niestandardowy do nowego raportu.
// Parse the theme JSON file into an object
let themeJsonObject = parseJsonfile(path);
let embedCreateConfiguration = {
…
theme: {
themeJson: themeJsonObject
}
};
let report = powerbi.createReport(embedContainer, embedCreateConfiguration);
Nuta
parseJsonfile
jest funkcją, która musi zostać zaimplementowana w kodzie aplikacji i nie jest częścią zestawu SDK.
Resetowanie motywu raportu
Metoda resetowania jest przydatna, jeśli chcesz zresetować motyw raportu do motywu domyślnego, ale nie masz pliku JSON motywu.
Klasa raportów klienta usługi Power BI definiuje metodę resetTheme
jako:
resetTheme(): Promise<void>
Wywołanie interfejsu API resetTheme
powoduje powrót do domyślnego motywu raportu.
// Apply the theme
report.resetTheme();
Zagadnienia i ograniczenia
- Użycie opisanego powyżej interfejsu API
applyTheme
zastępuje motyw domyślny całkowicie nowym plikiem JSON. Interfejs API nie rozszerzy konfiguracji motywu domyślnego. - Stosowanie motywów nie zmienia wizualizacji w raporcie, tak jak oczekiwano. Aby uzyskać więcej informacji, zobacz Sytuacje, gdy kolory motywu raportu nie trzymają się raportów.
- Nie można użyć interfejsu API, aby zastosować motyw i ustawić jednocześnie poziom kontrastu. Jeśli skonfigurujesz obie właściwości, interfejs API używa określonego poziomu kontrastu, ale ignoruje ustawienie motywu.