Funkce Language
Platí pro: aplikace plátna toky na počítači Power Pages Power Platform CLI
Vrací značku jazyka aktuálního uživatele.
Description
Funkce Language vrací jazyk, písmo a oblast aktuálního uživatele jako značku jazyka.
Informace o jazyce můžete použít pro přizpůsobení své aplikace jednotlivým národním prostředím. Pokud například vytváříte aplikaci, která se bude používat v Itálii a Francii, můžete pomocí funkce Language automaticky zobrazovat italské a francouzské řetězce uživatelům v jednotlivých umístěních.
Značky jazyka
Značka jazyka může být v jednom ze tří formátů:
Vrácená hodnota | Description |
---|---|
"lg-RE" | lg je dvouznaková zkratka pro jazyk a RE je dvouznaková zkratka pro oblast. Toto je nejběžnější návratový typ. Pro Českou republiku se například vrací hodnota cs-CZ. |
"lg" | lg je dvouznaková zkratka jazyka. Tento formát se používá, když jsou v Power Apps známé informace o jazyku, ale nejsou dostupné informace o konkrétní oblasti. |
"lg-scrp-RE" | lg je dvouznaková zkratka pro jazyk, scrp je čtyřznaková zkratka pro skript a RE je dvouznaková zkratka pro region. |
Power Apps používají formát značky jazyka IETF BCP-47.
Pokud chcete zobrazit seznam podporovaných jazyků, zadejte do řádku vzorců nebo rozšířeného zobrazení funkci Value("1";) a projděte si seznam národních prostředí navrhovaných jako druhý argument.
Značky jazyka používají také funkce Text a Value. Tyto funkce můžete používat pro překlady textových řetězců v globálně používaných aplikacích. Pokud těmto funkcím předáváte značku jazyka a na oblasti nezáleží, můžete použít jenom první část značky označující jazyk.
Syntaxe
Jazyk()
Příklady
Národní prostředí uživatele
Předpokládá se, že hostitelský operační systém a/nebo prohlížeč používají výchozí národní prostředí pro dané umístění.
Vzorec | Umístění | Vrácená hodnota |
---|---|---|
Jazyk() | Lisabon, Portugalsko | "pt-PT" |
Jazyk() | Rio de Janeiro, Brazílie | "pt-BR" |
Jazyk() | Atlanta, USA | "en-US" |
Jazyk() | Manchester, Velká Británie | "en-gb" |
Jazyk() | Paříž, Francie | "fr-FR" |
Jazyk() | Roseau, Dominika | "en" |
Jazyk() | Bělehrad, Srbsko | "sr-cyrl-RS" nebo "sr-latn-RS" podle nastavení systému uživatele |
Lokalizační tabulka
K lokalizaci se dá jednoduše přistoupit tak, že vytvoříte excelovou tabulku, ve které se bude ID textu (TextID) mapovat na přeložený text pro jazyk daného uživatele. Pro tuto tabulku byste mohli použít i kolekci nebo jakýkoliv jiný zdroj dat, ale rozhodli jsme se pro Excel, protože ho překladatelé můžou snadno upravovat a spravovat mimo aplikaci.
Vytvořte v Excelu následující tabulku:
Položka s označením blank (prázdné) ve sloupci LanguageTag (ZnačkaJazyka) se použije jako výchozí, pokud se nenajde specifický textový řetězec pro daný jazyk. Tato položka se musí vyskytovat za všemi ostatními položkami pro dané ID textu (TextID).
Pro naše účely stačí znát jazyk národního prostředí a oblast pro nás není podstatná. Pokud by oblast byla důležitá, mohli bychom do předchozí tabulky zahrnout úplné hodnoty značek jazyka.
Abyste vytvořili řádnou excelovou tabulku, použijte příkaz Tabulka na kartě Vložení. Ve výchozím nastavení bude mít název Tabulka1, ale název můžete libovolně změnit pomocí pole Název tabulky na levé straně karty Nástroje tabulky / Návrh.
Uložte excelový soubor do vašeho místního systému souborů.
V Power Apps klikněte nebo klepněte v pravém podokně na kartu Zdroje dat a pak klikněte nebo klepněte na Přidat zdroj dat.
Klikněte nebo klepněte na Přidat do aplikace statická data, klikněte nebo klepněte na uložený excelový soubor a potom na Otevřít.
Vyberte tabulku, kterou jste vytvořili, a potom klikněte nebo klepněte na Připojit.
Na všech místech ve své aplikaci, kde jste dosud měli text Hello (Ahoj), použijte místo něj tento vzorec:
- LookUp( Table1, TextID = "Ahoj" && (LanguageTag = Left( Language(), 2 ) || IsBlank( LanguageTag ))).LocalizedText
Tento vzorec vyhledá odpovídající hodnotu ze sloupce LocalizedText (LokalizovanýText) pro jazyk uživatele, a pokud potřebnou hodnotu nenajde, použije výchozí hodnotu pro prázdnou značku jazyka.
Myslete na to, že přeložené řetězce v jiných jazycích můžou být výrazně delší než ve vašem jazyce. Popisky a další prvky, které zobrazují řetězce v uživatelském rozhraní, budou muset být v mnoha případech širší, aby se na ně překlady vešly.
Překladová služba
Text můžete na požádání přeložit pomocí překladatelské služby, jako je služba Microsoft Translator:
- V Power Apps klikněte nebo klepněte v pravém podokně na kartu Zdroje dat a pak klikněte nebo klepněte na Přidat zdroj dat.
- Klikněte nebo klepněte na Microsoft Překladač.
Na všech místech ve své aplikaci, kde jste dosud měli text Hello (Ahoj), použijte místo něj tento vzorec:
- MicrosoftTranslator.Translate( "Ahoj", Language() )
Služba Microsoft Translator používá stejné jazykové značky, které vrací funkce Jazyk .
Tento přístup má ve srovnání s předchozím příkladem, kdy se využívala předem přeložená tabulka s textovými řetězci, určité nevýhody:
- Překlad bude chvilku trvat, protože bude potřeba volat službu prostřednictvím sítě. Kvůli tomu se přeložený text ve vaší aplikaci zobrazí s menší prodlevou.
- Překlad bude strojový a nemusí odpovídat vašim očekáváním nebo být nejlepším řešením pro danou situaci v rámci vaší aplikace.