Global support
Bemærk
Microsoft Power Fx er det nye navn til formelsproget for lærredapps. Vi arbejder på disse artikler, mens vi udtrækker sproget fra lærredapps, integrerer det i andre Microsoft Power Platform-produkter og gør det tilgængeligt som open source. Start med Microsoft Power Fx-oversigten for at få en introduktion til sproget.
Både mens du bygger og kører logik, vises den tekst, der vises af Power Fx, på de relevante sprog. Indtastning og visning af datoer og tal er tilpasset dit sprog og område.
Nogle steder i verden bruger man f.eks. et punktum (.) som decimalseparator, mens andre bruger komma (,). Det er også det, Excel gør. Det sker normalt ikke i andre programmeringssprog, hvor der som regel bruges en kanonisk prik . som decimalseparator for alle brugere verden over. For at være så tilgængelig som muligt for oprettere på alle niveauer er det vigtigt, at 3,14
er et decimaltal for en person i Frankrig, der har brugt den pågældende syntaks hele livet.
De apps, du opretter, kan også bruges globalt. Brug funktionerne Language, Text og Value, DateValue og andre funktioner til at tilpasse, hvad der vises og bruges som input på forskellige sprog.
Når det oprindelige Studio eller en oprindelig afspiller bruges, leveres det anvendte sprog af værtsoperativsystemet. I Windows kan denne indstilling kontrolleres under "Alle indstillinger" og derefter "Indstillinger for klokkeslæt og sprog". I Windows kan du også angive tegnene, der skal bruges til decimalseparatoren, og derved tilsidesætte sprogindstillingen.
Når weboplevelser bruges, leveres det anvendte sprog af browseren. De fleste browsere bruger som standard værtsoperativsystemets indstilling, men nogle giver også mulighed for at indstille sproget manuelt.
Skrivemiljøet tilpasser sig til forfatterenens sprogindstilling. Selve appen er gemt på en sprogagnostisk måde, så forfattere, der bruger forskellige sprog, kan redigere den samme app.
De fleste elementer i formlen er altid på engelsk:
- Funktionsnavne: If, Navigate, Collect osv.
- Navne på kontrolelementer: Screen.Fill, Button.OnSelect, Textbox.Font osv.
- Optællingsnavne: Color.Aqua, DataSourceInfo.MaxValue, FontWeight.Bold osv.
- Signalposter: Compass.Heading, Location. Latitude, App.ActiveScreen osv.
- Operatorer: Parent, in, exactIn osv.
Da skriveoplevelsen er lokaliseret, vises navne på kontrolelementer og andre objekter på forfatterens modersmål. På spansk vises nogle af navnene på kontrolelementer som:
Når du indsætter et af disse kontrolelementer din app, vises navnet som standard på engelsk. Denne ændring foretages, så der er overensstemmelse mellem navne på kontrolelementer og resten af formlen. Eksempel: Casilla, der er vist ovenfor, indsættes altid som Checkbox1.
Når et kontrolelement er indsat, kan du ændre navnet, som du vil. Når båndet "Indhold" er valgt, viser det yderst til venstre navnet på kontrolelementet. Hvis du vælger dette navn, vises der en tekstboks, hvor du kan redigere navnet:
Hvis du vil, kan du her omdøbe kontrolelementet til Casilla1. Den røde bølgestreg, der i dette tilfælde vises af en browser, er fordi, at navnet ikke er et spansk ord og ikke spiller nogen rolle.
Du kan bruge et hvilket som helst navn til:
- navne på kontrolelementer
- navne på samlinger
- navne på kontekstafhængige variabler
Nogle separatorer og operatorer ændres, afhængigt af decimalseparatoren på forfatterens sprog:
Decimalseparator på forfatterens sprog | Power Apps-decimalseparator | Power Apps-listeseparator | Power Apps-sammenkædningsoperator |
---|---|---|---|
. (punktum) | . (punktum) | , (komma) | ; (semikolon) |
, (komma) | , (komma) | ; (semikolon) | ;; (dobbelt semikolon) |
Ændringen i Power Apps-listeseparatoren stemmer overens med det, der sker med Excel-listeseparatoren. Det har indflydelse på:
Du kan f.eks. være opmærksom på følgende formel udtrykt på et sprog og i et område, der bruger punktum som decimalseparator, f.eks. Japan eller Storbritannien:
Se nu den samme formel på et sprog og i et område, hvor der bruges et komma som decimalseparator, f.eks. Frankrig eller Spanien:
De operatorer, der skifter mellem de to versioner, er fremhævet. Operatoren til valg af egenskab . (punktum) i Slider1.Value er altid den samme uanset decimalseparatoren.
Internt ændres formlen ikke. Det eneste, der ændres, er, hvordan den vises og redigeres af forfatteren. To forskellige forfattere, der bruger to forskellige sprog, kan se og redigere den samme formel, hvor hver ser de relevante separatorer og operatorer for deres sprog.
Den app, du opretter, kan tilpasses forskellige sprog, hvilket giver en fantastisk oplevelse for dine brugere over hele verden.
Funktionen Language returnerer sprogkoden for den aktuelle bruger. Denne funktion returnerer f.eks "en-GB" for brugere i Storbritannien og "de-DE" for brugere i Tyskland.
Du kan bl.a. bruge Language til at vise oversat tekst for dine brugere. Din app kan indeholde en tabel med oversatte værdier i din app:
Brug derefter en formel som følgende til at trække oversatte strenge fra tabellen:
LookUp( Table1, TextID = "Hello" && (LanguageTag = Left( Language(), 2 ) || IsBlank( LanguageTag ))).LocalizedText
Oversatte strenge på andre sprog kan være længere, end de er på dit sprog. I mange tilfælde skal etiketter og andre elementer, der viser strengene i brugergrænsefladen, være bredere for at tage højde for dette.
Du kan finde flere oplysninger i dokumentationen for funktionen Language.
Tal, datoer og klokkeslæt skrives i forskellige formater i forskellige dele af verden. Betydningen af kommaer, decimaler og rækkefølgen for måned, dato og år varierer fra sted til sted.
Funktionen Text formaterer tal og datoer ved hjælp af brugerens sprogindstilling.
Tekst kræver en formatstreng for at vide, hvordan du vil formatere tallet eller datoen. Denne formatstreng kan have en af to former:
- En global optælling. Eksempel: Text( Now(), DateTimeFormat.LongDate ). Denne formel formaterer den aktuelle dato i et passende sprogformat. Dette er den foretrukne måde at angive formatstrengen på.
- En brugerdefineret formatstreng. Text( Now(), "[$-en-US]dddd, mmmm dd, yyyy" ) viser f.eks. den samme tekst som optællingen, når den bruges på sproget "en-US". Fordelen ved den brugerdefinerede formatstreng er, at du kan angive præcist det, du vil.
"[$-En-US]" først i den brugerdefinerede formatstreng fortæller Text hvilket sprog den brugerdefinerede formatstreng skal fortolkes på. Denne streng indsættes for dig, og dit skrivesprog bruges som standard. Du skal normalt ikke ændre denne streng. Det er nyttigt, når forfattere med forskellige sprog redigerer den samme app.
Det tredje argument for Text angiver, hvilket sprog der skal bruges til funktionens resultat. Standarden er den aktuelle brugers sprogindstilling.
Du kan finde flere oplysninger i dokumentationen for funktionen Text.
Der er fire funktioner til læsning af tal, datoer og klokkeslæt, som er angivet af brugeren:
- Værdi: Konverterer et tal i en tekststreng til en talværdi.
- DateValue: Konverterer en datoværdi i en tekststreng til en dato/klokkeslætsværdi. Ethvert angivet klokkeslæt i tekststrengen ignoreres.
- TimeValue: Konverterer en klokkeslætsværdi i en tekststreng til en dato/klokkeslætsværdi. En dato angivet i tekststregen ignoreres.
- DateTimeValue: Konverterer en dato- og klokkeslætsværdi i en tekststreng til en dato/klokkeslætsværdi.
Hvis du har brugt Excel, er alle disse funktioner kombineret i en enkelt funktion af typen Value. De opdeles her, da Power Apps har forskellige typer for dato-/klokkeslætsværdier og tal.
Alle disse funktioner har de samme argumenter:
- Streng, påkrævet: En streng fra brugeren. Eksempel: En streng, der skrives i et Tekstinput-kontrolelement og læses fra kontrolelementet med egenskaben Tekst.
- Sprog, valgfrit: Det sprog, som strengen skal fortolkes på. Er som standard brugerens sprogindstilling.
Eksempel:
- Værdi( "12,345.678", "en-US" ) eller Værdi( "12,345.678" ) når den er placeret, hvor "en-US" er brugerens sprog, returnerer tallet 12345.678, klar til beregninger.
- DateValue( "1/2/01", "es-ES" ) eller DateValue( "1/2/01" ) når de er placeret, hvor "es-ES" er brugerens sprog, returnerer dato/klokkeslætsværdien 1. februar 2001 ved midnat.
- TimeValue( "11:43:02", "fr-FR" ) eller TimeValue( "11:43:02" ) når den er placeret, hvor "fr-FR" er brugerens sprog, returnerer dato/klokkeslætsværdien 1. januar 1970 kl. 11:43:02.
- DateTimeValue( "11:43:02 1/2/01", "de-DE" ) eller DateTimeValue( "11:43:02 1/2/01" ) når de er placeret, hvor "de-DE" er brugerens sprog, returnerer dato/klokkeslætsværdien 1. februar 2001 kl. 11:43:02.
Du kan finde flere oplysninger i dokumentationen til funktionerne Value og DateValue, TimeValue og DateTimeValue.
Funktionerne Calendar og Clock leverer oplysninger om kalender og ur på brugerens aktuelle sprog.
Brug bl.a. disse funktioner til at angive et Dropdown-kontrolelement med en liste med valgmuligheder.
Du kan finde flere oplysninger i dokumentationen til funktionerne Calendar og Clock.