Wereldwijde ondersteuning

Notitie

Microsoft Power Fx is de nieuwe naam voor de formuletaal van canvas-apps. Aan deze artikelen wordt gewerkt terwijl we de taal extraheren uit canvas-apps en deze integreren met andere Microsoft Power Platform-producten en het beschikbaar maken als open source. Begin met het Microsoft Power Fx-overzicht voor een inleiding in de taal.

Zowel tijdens het bouwen als tijdens het uitvoeren van logica, wordt de tekst die wordt weergegeven door Power Fx in de juiste talen weergegeven. De invoer en weergave van datums en getallen zijn aangepast aan uw taal en regio.

In sommige delen van de wereld gebruiken ze een . (punt) als decimaalteken, terwijl in andere delen een , (komma) wordt gebruikt. Dit is wat Excel ook doet. Dit wordt meestal niet gedaan in andere programmeertalen, die een canonieke . als decimaal scheidingsteken voor alle gebruikers wereldwijd gebruiken. Om zo benaderbaar mogelijk te zijn voor makers op alle niveaus is het belangrijk dat 3,14 een decimaal getal is voor een persoon in Frankrijk die die syntaxis zijn hele leven heeft gebruikt.

Ook de apps die u maakt, kunnen worden aangepast aan de taal en regio. Gebruik Language, Text, Value, DateValue en andere functies om te bepalen wat wordt weergegeven en gebruikt als invoer in verschillende talen.

Taalinstellingen

Wanneer u de systeemeigen studio of een systeemeigen speler gebruikt, wordt de gebruikte taal bepaald door het hostbesturingssysteem. In Windows kunt u deze instelling aanpassen onder Alle instellingen en vervolgens Tijd en taal. U kunt in Windows ook een teken opgeven om te gebruiken als decimaalteken en hiermee de taalinstelling overschrijven.

Wanneer u via het web werkt, wordt de gebruikte taal bepaald door de browser. De meeste browsers gebruiken de standaardinstelling van het hostbesturingssysteem en in sommige browsers kan de taal ook handmatig worden ingesteld.

Ontwerpomgeving

De ontwerpomgeving wordt automatisch aangepast aan de taalinstelling van de auteur. De app zelf wordt 'taalneutraal' opgeslagen, zodat auteurs die een andere taal gebruiken toch dezelfde app kunnen bewerken.

Namen in formules

De meeste elementen in formules zijn altijd in het Engels:

  • Functienamen: If, Navigate, Collect enz.
  • Eigenschapsnamen van besturingselementen: Screen.Fill, Button.OnSelect, Textbox.Font enz.
  • Inventarisatienamen: Color.Aqua, DataSourceInfo.MaxValue, FontWeight.Bold enz.
  • Signaalrecords: Compass.Heading, Location. Latitude, App.ActiveScreen enz.
  • Operators: Parent, in, exactIn enz.

Omdat de ontwerpomgeving is vertaald, worden namen van besturingselementen en andere objecten weergegeven in de eigen taal van de auteur. In het Spaans zien de namen van besturingselementen er bijvoorbeeld als volgt uit:

Namen van besturingselementen in het Spaans.

Wanneer u een van deze besturingselementen in uw app invoegt, wordt de naam standaard in het Engels weergegeven. Deze wijziging zorgt voor consistentie met de eigenschapsnamen van besturingselementen en de rest van de formule. Zo wordt Casilla hierboven ingevoegd als Checkbox1.

Nadat een besturingselement is ingevoegd, kunt u de naam wijzigen in wat u maar wilt. Wanneer het element is geselecteerd, wordt links in het lint Inhoud de naam van het besturingselement weergegeven. Als u deze naam selecteert, wordt een tekstvak geopend waarin u de naam kunt bewerken:

Ervaring in het Spaans.

Hier kunt u de naam van het besturingselement desgewenst wijzigen in Casilla1. De rode kronkellijn, in dit geval door een browser weergegeven, geeft aan dat de naam geen Spaans woord is. Dit is echter verder niet relevant.

U kunt de namen van de volgende elementen aanpassen:

  • Namen van besturingselementen
  • Namen van verzamelingen
  • Namen van contextvariabelen

Scheidingstekens voor formules en chainingoperators

Sommige scheidingstekens en operators gebruiken het decimaalteken van de taal van de auteur:

Decimaalteken van taal van auteur Decimaalteken van Power Apps Lijstscheidingsteken van Power Apps Chainingoperator van Power Apps
. (stip of punt) . (stip of punt) , (komma) ; (puntkomma)
, (komma) , (komma) ; (puntkomma) ;; (dubbele puntkomma)

De wijziging van het Power Apps-lijstscheidingsteken komt overeen met de wijziging van het Excel-lijstscheidingsteken. Dit heeft invloed op:

  • Argumenten in functieaanroepen.
  • Velden in een record.
  • Records in een tabel.

Neem bijvoorbeeld de volgende formule, die is uitgedrukt in een taal en regio die de stip of punt gebruikt als decimaal scheidingsteken, zoals Japan of het Verenigd Koninkrijk:

Power Apps formula If open paren slider1 dot value greater than 12 dot 59 comma notify open paren double-quote Valid! double-quote comma success close paren semi-colon Navigate open paren double-quote NextScreen double-quote comma None close paren comma notify open paren double-quote Invalid, try again double-quote comma error close paren close paren.

Bekijk nu dezelfde formule in een taal en regio waar een komma wordt gebruikt voor het decimale scheidingsteken, zoals in Frankrijk of Spanje:

Power Apps formula If open paren slider1 dot value greater than 12 comma 59 semi-colon notify open paren double-quote Valid! double-quote semi-colon success close paren double semi-colon Navigate open paren double-quote NextScreen double-quote semi-colon None close paren semi-colon notify open paren double-quote Invalid, try again double-quote semi-colon error close paren close paren.

De markering toont de operators die anders zijn in de twee versies. De eigenschapselectieoperator . (punt) in Slider1.Value is altijd hetzelfde, ongeacht het decimaalteken.

Inhoudelijk verandert de formule niet. Het enige wat anders is, is hoe deze wordt weergegeven en bewerkt door de auteur. Twee verschillende auteurs die elk een andere taal gebruiken, kunnen dezelfde formule weergeven en bewerken, waarbij ze de juiste scheidingstekens en operators zien voor de gebruikte taal.

Een wereldwijde app maken

De app die u maakt, kan worden aangepast aan verschillende talen, zodat gebruikers over de hele wereld een optimale ervaring hebben.

De functie Language

De functie Language retourneert de taalcode van de huidige gebruiker. Zo retourneert deze functie en-GB voor gebruikers in Groot-Brittannië en de-DE voor gebruikers in Duitsland.

U kunt Language onder andere gebruiken om vertaalde tekst aan uw gebruikers weer te geven. U kunt een tabel met vertaalde waarden in uw app opnemen:

Tabel met gelokaliseerde tekst.

Vervolgens haalt u de vertaalde tekenreeksen op uit de tabel met een formule, zoals die hieronder:

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

Vertaalde tekenreeksen in andere talen kunnen langer 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.

Zie voor meer informatie de documentatie voor de functie Language.

Notatie van getallen, datums en tijden

Getallen, datums en tijden hebben een andere notatie in verschillende delen van de wereld. Het gebruik van komma's en decimaaltekens en de volgorde van dag, maand en jaar verschillen per locatie.

De functie Text noteert getallen en datums volgens de taalinstelling van de gebruiker.

Voor Text is een tekenreeks voor notatie vereist om de gewenste notatie van een getal of datum te gebruiken. Deze tekenreeks voor notatie kan twee vormen aannemen:

  • Een taalgevoelige inventarisatie. Bijvoorbeeld Text( Now(), DateTimeFormat.LongDate ). Met deze formule krijgt de huidige datum de juiste notatie voor de taal. Deze methode vormt de beste manier om de tekenreeks voor notatie op te geven.
  • Een tekenreeks met aangepaste notatie. Text( Now(), "[$-en-US]dddd, mmmm dd, yyyy" ) geeft bijvoorbeeld dezelfde tekst weer als de inventarisatie bij gebruik in de taal 'en-US'. Het voordeel van de tekenreeks met aangepaste notatie is dat u precies kunt opgeven wat u wilt.

De '[$-en-US]' vooraan de tekenreeks met aangepaste notatie laat Text weten in welke taal de tekenreeks met aangepaste notatie moet worden geïnterpreteerd. Deze tekenreeks wordt voor u ingevoegd en verandert automatisch in uw ontwerptaal. U hoeft deze tekenreeks doorgaans niet te wijzigen. Dit is handig wanneer auteurs in verschillende talen dezelfde app bewerken.

Het derde argument van Text geeft aan welke taal moet worden gebruikt voor het resultaat van de functie. De standaardwaarde is de taalinstelling van de huidige gebruiker.

Zie voor meer informatie de documentatie voor de functie Text.

Getallen, datums en tijden lezen

Er zijn vier functies voor het lezen van getallen, datums en tijden die zijn opgegeven door de gebruiker:

  • Value: converteert een getal in een teksttekenreeks naar een getalwaarde.
  • DateValue: converteert een datumwaarde in een teksttekenreeks naar een datum/tijd-waarde. Tijden in de teksttekenreeks worden genegeerd.
  • TimeValue: converteert een tijdwaarde in een teksttekenreeks naar een datum/tijd-waarde. Datums in de teksttekenreeks worden genegeerd.
  • DateTimeValue: converteert een datum- en tijdwaarde in een teksttekenreeks naar een datum/tijd-waarde.

Als u Excel hebt gebruikt, worden al deze functies gecombineerd in de functie Value. Omdat Power Apps verschillende typen heeft voor datum/tijd-waarden en getallen, worden ze hier opgedeeld.

Al deze functies hebben dezelfde argumenten:

  • String, vereist: een tekenreeks die de gebruiker opgeeft. Een tekenreeks wordt bijvoorbeeld in het besturingselement Text input ingevoerd en uit het besturingselement gelezen met de eigenschap Text.
  • Language, optioneel: de taal waarin de tekenreeks moet worden geïnterpreteerd. Standaard wordt de taalinstelling van de gebruiker gebruikt.

Bijvoorbeeld:

  • Value( "12,345.678", "en-US" ) of Value( "12,345.678" ) in regio's waar 'en-US' de taal van de gebruiker is, retourneert het getal 12345.678, dat direct kan worden gebruikt voor berekeningen.
  • DateValue( "1/2/01", "es-ES" ) of DateValue( "1/2/01" ) in regio's waar 'es-ES' de taal van de gebruiker is, retourneert de datum/tijd-waarde 1 februari 2001 om middernacht.
  • TimeValue( "11:43:02", "fr-FR" ) of TimeValue( "11:43:02" ) in regio's waar 'fr-FR' de taal van de gebruiker is, retourneert de datum/tijd-waarde 1 januari 1970 om 11:43:02.
  • DateTimeValue ( "11:43:02 1 / 2/01", "de-DE" ) of DateTimeValue ( "11:43:02 1/2/01" ) wanneer gelokaliseerd waar 'de-DE' de taal van de gebruiker is, retourneert de datum/tijd-waarde 1 februari 2001 om 11:43:02.

Zie voor meer informatie de documentatie voor de functies Value en DateValue, TimeValue en DateTimeValue.

Informatie voor agenda en klok

Met de functies Calendar en Clock haalt u agenda- en klokinformatie op voor de huidige taal van de gebruiker.

Hiermee kunt u onder andere een besturingselement Vervolgkeuzelijst opgeven met een lijst van opties.

Zie voor meer informatie de documentatie voor de functies Calendar en Clock.