Dela via


Använda nationella värden i Power BI-rapporter med flera språk

Varje rapport som läses in i Power BI-tjänst initieras med en användarkontext som identifierar ett språk och en geografisk region som kallas språkvariant. I de flesta fall identifierar ett språk ett land/en region. Power BI-tjänst spårar kombinationen av användarens språk och nationella inställningar med hjälp av ett kulturnamn.

Ett kulturnamn är vanligtvis en gemen språkidentifierare och en språkidentifierare för versaler avgränsade med bindestreck. Kulturnamnet en-US identifierar en användare i USA som talar engelska. Ett kulturnamn es-ES identifierar en användare i Spanien som talar spanska. Ett kulturnamn fr-FR identifierar en användare i Frankrike som talar franska. Ett kulturnamn de-DE identifierar en användare i Tyskland som talar tyska.

USERCULTURE Språk Nationella inställningar
en-US English USA
es-ES Spanska Spanien
fr-FR Franska Frankrike
de-DE Tyska Tyskland

Kommentar

I vissa fall innehåller ett kulturnamn även annan information. Det finns till exempel två olika kulturnamn för språket serbiska i Serbien, som är sr-Cyrl-RS och sr-Latn-RS. Delen i mitten som kallas skriptet (Cyrl och Latn) anger om det kyrilliska alfabetet eller det latinska alfabetet ska användas. Mer information finns i RFC 4646.

En lista över kulturnamnsvärden finns i ISO 639 Språkkoder och Onlinebläddringsplattform.

Organisera projekt för metadataöversättning

I början av ett projekt som innebär att skapa en ny Power BI-semantisk modell med metadataöversättning, listar du de kulturnamn som du planerar att stödja. Utöka sedan den semantiska modellen genom att lägga till metadataöversättningar för varje kulturnamn.

I följande diagram visas en semantisk modell med standardspråkinställningen en-US. Den semantiska modellen har utökats med metadataöversättningar för tre andra kulturnamn: es-ES, fr-FRoch de-DE.

Diagrammet visar semantiska modellobjekt och deras metadataöversättningar i två korta tabeller för standardvärdena och tre språk.

Varje metadataöversättning är associerad med ett specifikt kulturnamn. Kulturnamn fungerar som uppslagsnycklar som används för att lägga till och hämta metadataöversättningar inom ramen för en Power BI-semantisk modell.

Du behöver inte ange metadataöversättningar för standardspråket för semantikmodellen. Power BI kan bara använda de semantiska modellobjektnamnen direkt för det kulturnamnet. Ett sätt att tänka på detta är att de semantiska modellobjektnamnen fungerar som en virtuell uppsättning metadataöversättningar för standardspråket.

Diagrammet visar semantiska modellobjekt och deras metadataöversättningar, inklusive en översättning för standardspråket.

Det går att uttryckligen lägga till metadataöversättning för standardspråket. Använd den här metoden sparsamt. Power BI Desktop stöder inte inläsning av metadataöversättningar i rapportdesignern. Power BI Desktop läser i stället bara in semantiska modellobjektnamn. Om du uttryckligen lägger till metadataöversättningar för standardspråket ser Power BI-rapporterna annorlunda ut i Power BI Desktop än i Power BI-tjänst.

Läsa in en rapport i Power BI

När en användare navigerar till en Power BI-rapport med en HTTP GET-begäran skickar webbläsaren ett HTTP-huvud med namnet Accept-Language med ett värde inställt på ett giltigt kulturnamn. Följande skärmbild visar en GET-begäran som överför ett Accept-Language huvudvärde på en-US.

Skärmbild som visar värden för begärandehuvud, inklusive ett klientvärde för accept-language för en-us.

När Power BI-tjänst läser in en rapport läser den kulturnamnet som skickades i Accept-Language rubriken och använder det för att initiera språket och språkvarianten för rapportens inläsningskontext. På sina enheter kan användarna styra vilket kulturnamn som skickas i Accept-Language rubrikvärdet genom att konfigurera regionala inställningar.

När du öppnar en Power BI-rapport i Power BI-tjänst kan du åsidosätta Accept-Language rubrikvärdet genom att lägga till parametern language i slutet av rapport-URL:en och ange dess värde till ett giltigt kulturnamn. Du kan till exempel testa att läsa in en rapport för en användare i Kanada som talar franska genom att ange language parametervärdet till fr-CA.

Skärmbild som visar demorapporten med ett språk som ingår i URL:en.

Kommentar

Genom att lägga till parametern language i rapport-URL:er kan du testa metadataöversättningar i Power BI-tjänst. Den här tekniken kräver inte att du konfigurerar om några inställningar på den lokala datorn eller i webbläsaren.

Stöd för flera nationella inställningar för ett enda språk

Du kan behöva ha stöd för flera nationella inställningar för ett enda talat språk. Tänk dig ett scenario med användare som talar franska men bor i olika länder, till exempel Frankrike, Belgien och Kanada. Du publicerar en semantisk modell med ett standardspråk en-US för och metadataöversättningar för ytterligare tre kulturnamn, inklusive es-ES, fr-FRoch de-DE.

Vad händer när en fransktalande kanadensisk användare öppnar en rapport med sidhuvudvärdet Accept-Languagefr-CA? Läser Power BI-tjänst in översättningar för franska (fr-FR) eller faller det tillbaka på de engelska semantiska modellobjektnamnen?

Diagrammet representerar en webbläsare med en språkinställning för fr-CA som ansluter till en semantisk modell som har flera nationella inställningar men saknar fr-CA.

Mått fungerar för närvarande annorlunda än tabeller och kolumner i Power BI. Med mått försöker Power BI-tjänst hitta den närmaste matchningen. För kulturnamnet för fr-CAskulle namnen på måtten läsas in med hjälp av metadataöversättningarna för fr-FR.

Med tabeller och kolumner kräver Power BI-tjänst en exakt matchning mellan kulturnamnet i begäran och de metadataöversättningar som stöds. Om det inte finns någon exakt matchning återgår Power BI-tjänst till att läsa in semantiska modellobjektnamn. Namnen på tabeller och kolumner i det här scenariot skulle läsas in med hjälp av engelska semantiska modellobjektnamn.

Kommentar

Den här användningen av standardspråket för namnen på tabeller och kolumner är ett känt problem för Power BI.

Vi rekommenderar att du lägger till metadataöversättning för alla kulturnamn som du vill stödja. I det här exemplet lägger du till tre uppsättningar franska översättningar för att stödja kulturnamnen fr-FR, fr-BE och fr-CA. Metoden hanterar scenariot där franska översättningar för användare i Frankrike skiljer sig från franska översättningar för användare i Kanada.

Diagrammet visar semantiska modellobjekt och deras metadataöversättningar, inklusive tre franska språk.

Implementera översättningar med hjälp av mått och USERCULTURE

En annan funktion i Power BI som hjälper dig att skapa rapporter med flera språk är dax-funktionen (Data Analysis Expressions). USERCULTURE När den USERCULTURE anropas i ett mått returnerar funktionen kulturnamnet för den aktuella rapportinläsningskontexten. Den här metoden gör det möjligt att skriva DAX-logik i mått som implementerar översättningar dynamiskt.

Du kan implementera översättningar dynamiskt genom att anropa USERCULTURE i ett mått, men du kan inte uppnå samma resultat med beräknade tabeller eller beräknade kolumner. DAX-uttrycken för beräknade tabeller och beräknade kolumner utvärderas vid semantisk modellbelastningstid. Om du anropar USERCULTURE funktionen i DAX-uttrycket för en beräknad tabell eller beräknad kolumn returneras kulturnamnet för semantikmodellens standardspråk. Om du anropar USERCULTURE ett mått returneras kulturnamnet för den aktuella användaren.

Exempelrapporten visar USERCULTURE returvärdet i det övre högra hörnet av rapportbanderollen. Du visar vanligtvis inte ett rapportelement som det här i ett riktigt program.

Skärmbild som visar demorapporten med nationella inställningar som visas i hörnet av webbläsaren.

Den här koden är ett enkelt exempel på hur du skriver ett DAX-uttryck för ett mått som implementerar dynamiska översättningar. Du kan använda en SWITCH instruktion som anropar USERCULTURE för att skapa ett grundläggande mönster för att implementera dynamiska översättningar.

Product Sales Report Label = SWITCH( USERCULTURE() ),
  "es-ES", "Informe De Ventas De Productos",
  "fr-FR", "Rapport Sur Les Ventes De Produits",
  "fr-BE", "Rapport Sur Les Ventes De Produits",
  "fr-CA", "Rapport Sur Les Ventes De Produits",
  "de-DE", "Produktverkaufsbericht",
  "Product Sales Report"
)

Mer information finns i Lär dig grunderna för DAX i Power BI Desktop.

Formatera datum och tal med aktuellt användarspråk

Du kan översätta dynamiskt genom att skriva ett DAX-uttryck i ett mått med villkorslogik baserat på användarens kulturnamn. I de flesta fall behöver du inte skriva villkorsstyrd DAX-logik baserat på användarens nationella inställningar eftersom visuella Power BI-objekt automatiskt hanterar språkspecifik formatering i bakgrunden.

I ett enkelt scenario skapar du en rapport för en målgrupp av rapportkonsumenter som bor i både New York (en-US) och i London (en-GB). Alla användare talar engelska (en), men vissa bor i olika regioner (US och GB) där datum och siffror formateras på olika sätt. En användare från New York vill till exempel se datum i ett mm/dd/yyyy format medan en användare från London vill se datum i ett dd/mm/yyyy format.

Allt fungerar som förväntat om du konfigurerar kolumner och mått med hjälp av formatsträngar som stöder regional formatering. Om du formaterar ett datum rekommenderar vi att du använder en formatsträng, till exempel Kort datum eller Långt datum , eftersom de stöder regional formatering.

Skärmbild som visar olika datumformat, till exempel kort datum, långt datum och mmmm d, åååå.

Här följer några exempel på hur ett datumvärde formaterat med kort datum visas när det läses in under olika nationella inställningar.

Nationella inställningar Format
en-US 12/31/2022
en-GB 31/12/2022
pt-PT 31-12-2022
de-DE 31.12.2022
ja-JP 2022/12/31