Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Aby załadować raporty w wielu językach w języku użytkownika, możesz użyć zakładek lub osadzić raporty.
Wybieranie języka za pomocą zakładek
Jeśli planujesz opublikować raport usługi Power BI z tłumaczeniami danych na potrzeby dostępu użytkowników za pośrednictwem usługa Power BI, musisz załadować raport z poprawnym językiem dla bieżącego użytkownika. Utwórz zestaw zakładek, które stosują filtry do tabeli Languages .
Utwórz oddzielną zakładkę dla każdego języka, który obsługuje tłumaczenia danych.
Wyłącz opcję Wyświetl i Bieżąca strona i włącz tylko zachowanie danych .
Aby zastosować zakładkę dla określonego języka, podaj drugi parametr w adresie URL raportu.
?language=es&bookmarkGuid=Bookmark856920573e02a8ab1c2a
Ten parametr adresu URL raportu ma nazwę bookmarkGuid. Filtrowanie w tabeli Languages jest stosowane przed wyświetleniem wszelkich danych użytkownikowi.
Osadzanie raportów implementujących tłumaczenia danych
Ładowanie raportów przy użyciu osadzania usługi Power BI zapewnia większą elastyczność niż proces ładowania raportów dla użytkowników, którzy uzyskują dostęp do raportu za pośrednictwem usługa Power BI. Raport można załadować przy użyciu określonego języka i ustawień regionalnych, rozszerzając config
obiekt przekazany do powerbi.embed
obiektu zawierającego localeSettings
language
właściwość .
let config = {
type: "report",
id: reportId,
embedUrl: embedUrl,
accessToken: embedToken,
tokenType: models.TokenType.Embed,
localeSettings: { language: "de-DE" }
};
// embed report using config object
let report = powerbi.embed(reportContainer, config);
W przypadku osadzania raportu za pomocą obiektu konfiguracji, takiego jak ten, który ustawia właściwość języka obiektu ustawień regionalnych Ustawienia tłumaczenia metadanych i translacji etykiet raportu działają zgodnie z oczekiwaniami. Istnieje jednak jeszcze jeden krok wymagany do filtrowania tabeli Languages w celu wybrania odpowiedniego języka dla bieżącego użytkownika.
Istnieje możliwość zastosowania zakładki do osadzonego raportu. Zamiast tego można zastosować filtr bezpośrednio w tabeli Languages w miarę ładowania raportu przy użyciu interfejsu API języka JavaScript usługi Power BI. Nie ma potrzeby dodawania zakładek do filtrowania tabeli Languages , jeśli zamierzasz używać raportu tylko przy użyciu osadzania usługi Power BI.
Aby zastosować filtrowanie podczas ładowania osadzonego raportu, zarejestruj program obsługi zdarzeń dla loaded
zdarzenia. Podczas rejestrowania programu obsługi zdarzeń dla zdarzenia osadzonego raportu loaded
można udostępnić program obsługi zdarzeń języka JavaScript uruchamiany przed rozpoczęciem procesu renderowania. Takie podejście sprawia, loaded
że zdarzenie jest idealnym miejscem do zarejestrowania programu obsługi zdarzeń, którego celem jest zastosowanie poprawnego filtrowania w tabeli Languages .
Oto przykład kodu JavaScript, który rejestruje procedurę obsługi zdarzeń dla loaded
zdarzenia w celu zastosowania filtru do tabeli Languages dla języka hiszpańskiego.
let report = powerbi.embed(reportContainer, config);
report.on("loaded", async (event: any) => {
// let's filter data translations for Spanish
let languageToLoad = "es";
// create filter object
const filters = [{
$schema: "http://powerbi.comproduct/schema#basic",
target: { table: "Languages",
column: "LanguageId"
},
operator: "In",
values: [ languageToLoad ], // <- Filter based on Spanish
filterType: models.FilterType.Basic,
requireSingleSelection: true
}];
// call updateFilters and pass filter object to set data translations to Spanish
await report.updateFilters(models.FiltersOperations.Replace, filters);
});
Napiwek
W przypadku ustawiania filtrów przy użyciu interfejsu API języka JavaScript usługi Power BI należy preferować updateFilters
metodę za pomocą setFilters
metody . Metoda updateFilters
umożliwia usunięcie istniejących filtrów, ale setFilters
nie.