De functie Language

Van toepassing op: Canvas-apps Bureaubladstromen Power Platform CLI

Deze functie retourneert de taalcode van de huidige gebruiker.

Omschrijving

De functie Language retourneert de taal, het script en de regio van de huidige gebruiker als een taalcode.

Gebruik de taalinformatie om uw app aan te passen op basis van landinstellingen. Als u bijvoorbeeld een app maakt die in Italië en Frankrijk zal worden gebruikt, kunt u Language gebruiken om automatisch Italiaanse en Franse tekenreeksen weer te geven voor uw gebruikers op deze verschillende locaties.

Taalcodes

Een taalcode kan een van de volgende drie indelingen hebben:

Retourwaarde Omschrijving
"lg‑RE" lg is de afkorting van twee tekens voor de taal en RE is de afkorting van twee tekens voor de regio. Dit is het meest voorkomende retourtype. Zo wordt "en-GB" geretourneerd voor het Verenigd Koninkrijk.
"lg" lg is de afkorting van twee tekens voor de taal. Dit is de indeling die wordt gebruikt als Power Apps wel informatie over de taal heeft, maar geen informatie voor de specifieke regio heeft.
"lg‑scrp‑RE" lg is de afkorting van twee tekens voor de taal, scrp is de afkorting van vier tekens voor het script en RE is de afkorting van twee tekens voor de regio.

Power Apps gebruikt de IETF BCP-47-taalcode-indeling.

Typ Value ( "1", ) in de formulebalk of in de geavanceerde weergave en schuif door de lijst met aanbevolen landinstellingen voor het tweede argument om de lijst met ondersteunde taalcodes weer te geven.

De functies Text en Value gebruiken ook taalcodes. Gebruik deze functies om teksttekenreeksen te vertalen op een locatiebewuste manier. Als u een taalcode aan deze functies doorgeeft en de regio daarbij niet uitmaakt, kunt u alleen het taalgedeelte van de code gebruiken.

Syntaxis

Language()

Voorbeelden

De landinstelling van de gebruiker

Er wordt vanuit gegaan dat het hostbesturingssysteem en/of de browser de standaardlandinstelling voor de locatie gebruiken.

Formule Location Retourwaarde
Language() Lissabon, Portugal "pt-PT"
Language() Rio de Janeiro, Brazilië "pt-BR"
Language() Atlanta, VS "en-US"
Language() Manchester, Verenigd Koninkrijk "en-GB"
Language() Parijs, Frankrijk "fr-FR"
Language() Roseau, Dominica "en"
Language() Belgrado, Servië "sr-cyrl-RS" of "sr-latn-RS", afhankelijk van de systeeminstellingen van de gebruiker

Lokalisatietabel

Een eenvoudige lokalisatiemethode is om een Excel-werkblad te maken waarin een door de auteur gedefinieerde TextID wordt toegewezen aan een vertaalde tekst voor de taal van de gebruiker. Hoewel u een verzameling of willekeurige andere gegevensbron voor deze tabel kunt gebruiken, kiezen we voor Excel omdat vertalers die indeling eenvoudig kunnen bewerken en buiten de app kunnen beheren.

  1. Maak de volgende tabel in Excel:

    Lokalisatietabel.

    De invoer met blank voor de kolom Language zal standaard worden gebruikt als er geen specifieke teksttekenreeks voor een bepaalde taal is gevonden. Deze invoer moet achter alle andere vermeldingen voor een bepaalde TextID worden weergegeven.

    We hoeven voor ons doel alleen maar naar de taal van de landinstelling te kijken en niet naar de regio. Als regionale overwegingen belangrijk waren geweest, hadden we de volledige taalcodewaarde in de bovenstaande tabel kunnen opnemen.

  2. Gebruik de opdracht Tabel op het lint Insert om er een juiste Excel-tabel van te maken. Deze heeft standaard de naam Tabel1, maar u kunt de tabel via het lint Hulpmiddelen voor tabellen/Ontwerp en het tekstvak Tabelnaam: uiterst links een andere naam geven.

  3. Sla het Excel-bestand op naar uw lokale bestandssysteem.

  4. Klik of tik in Power Apps in het rechterdeelvenster op het tabblad Gegevensbronnen en klik of tik vervolgens op DataSource toevoegen.

  5. Klik of tik op Add static data to your app, klik of tik op het Excel-bestand dat u hebt opgeslagen en klik of tik vervolgens op Open.

  6. Selecteer de tabel die u hebt gemaakt en klik of tik vervolgens op Verbinden.

Gebruik in uw app de volgende formule op de plaats waar u anders de tekst "Hello" zou hebben gebruikt:

  • LookUp( Table1, TextID = "Hello" && (LanguageTag = Left( Language(), 2 ) || IsBlank( LanguageTag ))).LocalizedText

Deze formule zoekt de juiste waarde voor LocalizedText voor de taal van de gebruiker op. Als deze waarde niet wordt gevonden, gebruikt de functie de standaardversie blank.

Houd er rekening mee dat vertaalde tekenreeksen in andere talen aanzienlijk langer kunnen zijn dan in uw eigen taal. De labels en andere elementen waarin de tekenreeksen in uw gebruikersinterface worden weergegeven, moeten daarom in veel gevallen breder zijn, zodat er ruimte is voor langere teksten.

Vertaalservice

U kunt tekst op verzoek vertalen via een vertaalservice, zoals de service Microsoft Translator:

  1. Klik of tik in Power Apps in het rechterdeelvenster op het tabblad Gegevensbronnen en klik of tik vervolgens op DataSource toevoegen.
  2. Klik of tik op Microsoft Translator.

Gebruik in uw app de volgende formule op de plaats waar u anders de tekst "Hello" zou hebben gebruikt:

  • MicrosoftTranslator.Translate( "Hello", Language() )

De Microsoft Translator-service gebruikt dezelfde taalcodes die de functie Language retourneert.

Deze methode heeft wat nadelen ten opzichte van het vorige voorbeeld waarin een vooraf vertaalde tabel met teksttekenreeksen werd gebruikt:

  • De vertaling neemt tijd in beslag en vereist een aanroep van een service via het netwerk. Dit resulteert in een vertraging waarmee de vertaalde tekst in uw app wordt weergegeven.
  • De vertaling is mechanisch en is mogelijk niet wat u verwacht of de beste keus voor de situatie in uw app.