Globaler Support
Anmerkung
Microsoft Power Fx ist der neue Name für die Formelsprache für Canvas-Apps. Diese Artikel werden ständig weiterentwickelt, da wir die Sprache aus Canvas-Apps extrahieren, in andere Microsoft Power Platform-Produkte integrieren und als Open Source zur Verfügung stellen. Beginnen Sie mit der Microsoft Power Fx-Übersicht, um eine Einführung in die Sprache zu erhalten.
Sowohl beim Erstellen als auch beim Ausführen der Logik wird der von Power Fx angezeigte Text in den entsprechenden Sprachen angezeigt. Die Eingabe und die Datums- und Zahlenanzeige ist ebenfalls an Ihre bestimmte Sprache und Region angepasst.
Beispielsweise in einigen Regionen der Welt wird ein Punkt . (Punkt) als Dezimaltrennzeichen verwendet, in anderen Regionen hingegen ein Komma , (Komma). Dies ist auch das, was Excel tut. Dies wird normalerweise nicht in anderen Programmiersprachen durchgeführt, die im Allgemeinen einen kanonischen Punkt . als Dezimaltrennzeichen für alle Benutzer weltweit verwenden. Um für Hersteller auf allen Ebenen so zugänglich wie möglich zu sein, ist es wichtig, dass 3,14
eine Dezimalzahl für eine Person in Frankreich ist, die diese Syntax ihr ganzes Leben lang verwendet hat.
Die Apps, die Sie erstellen, können ebenfalls global kompatibel sein. Verwenden Sie die Funktionen Sprache, Text und Wert,, Datenert sowie andere Funktionen, um anzupassen, was als Eingabe in verschiedenen Sprachen angezeigt und verwendet wird.
Spracheinstellungen
Wenn Sie ein natives Studio oder einen nativen Spieler verwenden, wird die verwendete Sprache vom Hostbetriebssystem bereitgestellt. Bei Windows kann diese Einstellung unter „Alle Einstellungen“ und dann unter den Einstellungen für „Zeit & Sprache“ gesteuert werden. Windows ermöglicht Ihnen auch, die Zeichen anzugeben, die als Dezimalzeichen verwendet werden sollen, wobei die Spracheinstellungen überschrieben werden.
Bei Verwendung der Webbenutzeroberfläche wird die verwendete Sprache vom Browser bereitgestellt. Die meisten Browser übernehmen standardmäßig die Einstellung des Hostbetriebssystems, wobei einige auch die Möglichkeit bieten, die Sprache manuell festzulegen.
Erstellungsumgebung
Die Erstellungsumgebung passt sich an die Spracheinstellung des Autors an. Die App selbst wird auf eine sprachunabhängige Weise gespeichert, sodass Autoren, die verschiedene Sprachen verwenden, die gleiche App bearbeiten können.
Namen in Formeln
Die meisten Elemente in einer Formel sind immer auf Englisch:
- Funktionsnamen: If, Navigate, Collect usw.
- Namen von Steuerelementeigenschaften: Screen.Fill, Button.OnSelect, Textbox.Font usw.
- Enumerationsnamen: Color.Aqua, DataSourceInfo.MaxValue, FontWeight.Bold usw.
- Signalaufzeichnungen: Compass.Heading, Location. Latitude, App.ActiveScreen usw.
- Betreiber: Parent, in, exactIn usw.
Da die Erstellungsumgebung lokalisiert wird, werden Steuerelement- und andere Objektnamen in der Muttersprache des Autors angezeigt. In Spanisch werden einige der Steuerelementnamen wie folgt angezeigt:
Wenn Sie eines dieser Steuerelemente in Ihre App einfügen, wird dessen Name standardmäßig auf Englisch angezeigt. Diese Änderung erfolgt aus Gründen der Konsistenz zwischen den Namen der Steuerelementeigenschaften und dem Rest der Formel. Beispielsweise wird das oben aufgeführte Casilla als Checkbox1 eingefügt.
Nach dem Einfügen eines Steuerelements können Sie den Namen beliebig ändern. Solange es ausgewählt ist, zeigt der ganz linke Teil des Menübands „Content“ den Namen des Steuerelements an. Wenn Sie diesen Namen auswählen, wird ein Textfeld angezeigt, in dem Sie den Namen bearbeiten können:
Wenn Sie möchten, können Sie hier das Steuerelement in Casilla1 umbenennen. Die rote Wellenlinie, die in diesem Fall von einem Browser angezeigt wird, ist darauf zurückzuführen, dass es sich bei dem Wort nicht um ein spanisches Wort handelt, und ist nicht zu beachten.
Sie können beliebige Namen für folgende Namen verwenden:
- Steuerelementnamen
- Sammlungsnamen
- Namen von Kontextvariablen
Formeltrennzeichen und Verkettungsoperator
Einige Trennzeichen und Operatoren werden basierend auf dem Dezimaltrennzeichen der Sprache des Autors verschoben:
Dezimaltrennzeichen der Sprache des Autors | Power Apps-Dezimaltrennzeichen | Power Apps-Listentrennzeichen | Power Apps-Verkettungsoperator |
---|---|---|---|
, (Punkt) | , (Punkt) | , (Komma) | ; (Semikolon) |
, (Komma) | , (Komma) | ; (Semikolon) | ;; (doppeltes Semikolon) |
Die Änderung am Listentrennzeichen von Power Apps ist konsistent zu der Änderung am Listentrennzeichen von Excel. Sie wirkt sich auf Folgendes aus:
Betrachten Sie beispielsweise die folgende Formel, die in einer Sprache und Region ausgedrückt wird, in der ein Punkt als Dezimaltrennzeichen verwendet wird, z. B. in Japan oder im Vereinigten Königreich:
Zeigen Sie nun dieselbe Formel in einer Sprache und Region an, in der ein Komma für das Dezimaltrennzeichen verwendet wird, z. B. in Frankreich oder Spanien:
Die Hervorhebung zeigt die Operatoren, die zwischen den beiden Versionen wechseln. Der Operator Eigenschaftsauswahl . (Punkt) in Slider1.Value ist immer gleich, unabhängig davon, was als Dezimaltrennzeichen verwendet wird.
Intern wird die Formel nicht geändert; es wird nur geändert, wie diese vom Autor angezeigt und bearbeitet wird. Zwei verschiedene Autoren, die zwei verschiedene Sprachen verwenden, können die gleiche Formel anzeigen und bearbeiten, wobei jedem die für seine Sprache entsprechenden Trennzeichen und Operatoren angezeigt werden.
Erstellen einer globalen App
Die App, die Sie erstellen, kann an verschiedene Sprachen angepasst werden, wodurch eine hervorragende Benutzerfreundlichkeit für Benutzer auf der ganzen Welt geboten wird.
Sprachfunktion
Die Funktion Sprache gibt das Sprach-Tag für den aktuellen Benutzer zurück. Diese Funktion gibt z. B. "en-GB" für Benutzer in Großbritannien und "de-DE" für Benutzer in Deutschland zurück.
Unter anderem können Sie Language dazu verwenden, Ihren Benutzern übersetzten Text anzuzeigen. Ihre App kann eine Tabelle mit übersetzten Werten in Ihre App einschließen:
Anschließend kann eine Formel wie die folgende verwendet werden, um übersetzte Zeichenfolgen aus der Tabelle zu ziehen:
LookUp( Table1, TextID = "Hello" && (LanguageTag = Left( Language(), 2 ) || IsBlank( LanguageTag ))).LocalizedText
Übersetzte Zeichenfolgen in anderen Sprachen können länger sein als in Ihrer Sprache. In vielen Fällen müssen die Bezeichnungen und anderen Elemente, die die Zeichenfolgen in Ihrer Benutzerschnittstelle anzeigen, breiter sein, um sich dem anzupassen.
Weitere Informationen finden Sie in der Dokumentation zur Sprach-Funktion.
Formatieren von Zahlen, Datumsangaben und Zeitangaben
Zahlen, Datumsangaben und Zeitangaben werden in verschiedenen Teilen der Welt in verschiedenen Formaten geschrieben. Die Bedeutung von Kommas, Dezimalstellen und die Reihenfolge von Monat, Datum und Jahr variieren von Ort zu Ort.
Die Text-Funktion formatiert Zahlen und Datumsangaben anhand der Spracheinstellung des Benutzers.
Text erfordert eine Formatzeichenfolge, um zu wissen, wie Sie die Zahl oder das Datum formatieren möchten. Diese Formatzeichenfolge kann eine von zwei Formen annehmen:
- Eine global kompatible Enumeration. Zum Beispiel Text( Now(), DateTimeFormat.LongDate ). Mit dieser Formel wird das aktuelle Datum in einem für die Sprache geeigneten Format formatiert. Diese Methode stellt die bevorzugte Methode zum Angeben der Formatzeichenfolge dar.
- Eine benutzerdefinierte Formatzeichenfolge. Zum Beispiel zeigt Text( Now(), "[$-en-US]dddd, mmmm dd, yyyy" ) den gleichen Text wie die Enumeration an, wenn sie in der Sprache „en-US“ verwendet wird. Der Vorteil der benutzerdefinierten Formatzeichenfolge ist, dass Sie genau angeben können, was Sie möchten.
„[$-en-US]“ am Anfang der benutzerdefinierten Formatzeichenfolge gibt Text an, in welcher Sprache die benutzerdefinierte Formatzeichenfolge interpretiert werden soll. Diese Zeichenfolge wird für Sie eingefügt und übernimmt standardmäßig Ihre Erstellungssprache. Normalerweise müssen Sie diese Zeichenfolge nicht ändern. Es ist hilfreich, wenn Autoren mit verschiedenen Sprachen die gleiche App bearbeiten.
Das dritte Argument für Text gibt an, welche Sprache für das Ergebnis der Funktion verwendet werden soll. Der Standardwert ist die Spracheinstellung des aktuellen Benutzers.
Weitere Informationen finden Sie in der Dokumentation zur Text-Funktion.
Lesen von Zahlen, Datumsangaben und Zeitangaben
Es gibt vier Funktionen zum Lesen von Zahlen, Datumsangaben und Uhrzeiten, die vom Benutzer bereitgestellt werden:
- Wert: Wandelt eine Zahl in einer Textzeichenfolge in einen Zahlenwert um.
- DateValue: Wandelt einen Datumswert in einer Textzeichenfolge in einen Datums-/Uhrzeitwert um. Jede Zeitangabe in der Textzeichenfolge wird ignoriert.
- TimeValue: Wandelt einen Zeitwert in einer Textzeichenfolge in einen Datums-/Uhrzeitwert um. Jede Datumsangabe in der Textzeichenfolge wird ignoriert.
- DateTimeValue: Wandelt einen Datums- und Zeitwert in einer Textzeichenfolge in einen Datums-/Zeitwert um.
Wenn Sie Excel verwendet haben, werden alle diese Funktionen in der einzelnen Value-Funktion kombiniert. Sie werden hier besonders ausgewiesen, da Power Apps über getrennte Typen für date/time-Werte und Zahlen verfügt.
Alle diese Funktionen haben die gleichen Argumente:
- Zeichenfolge, erforderlich: Eine Zeichenfolge vom Benutzer. Beispielsweise gibt eine Zeichenfolge mit der Text-Eigenschaft Text in ein Text input-Steuerelement ein und liest aus diesem.
- Sprache, optional: Die Sprache, in der die Zeichenfolge interpretiert werden soll. Dabei handelt es sich standardmäßig um die Spracheinstellung des Benutzers.
Beispiel:
- Value( "12,345.678", "en-US" ) oder Value( "12,345.678" ) gibt, wenn "en-US" die Sprache des Benutzers ist, die Zahl 12345.678 zurück und ist bereit für Berechnungen.
- DateValue( "1/2/01", "es-ES" ) oder DateValue( "1/2/01" ) , wobei "es-ES" die Sprache des Benutzers ist, gibt den Datums-/Uhrzeitwert 1. Februar 2001 um Mitternacht zurück.
- TimeValue( "11:43:02", "fr-FR" ) oder TimeValue( "11:43:02" ) gibt, wenn "fr-FR" die Sprache des Benutzers ist, den Datums-/Uhrzeitwert 1. Januar 1970 um 11:43:02 zurück.
- DateTimeValue( "11:43:02 1/2/01", "de-DE" ) oder DateTimeValue( "11:43:02 1/2/01" ) gibt, wenn "de-DE" die Sprache des Benutzers ist, den Datums-/Uhrzeitwert 1. Februar 2001 um 11:43:02 zurück.
Weitere Informationen finden Sie in der Dokumentation zu den Funktionen Wert und Datumswert und Datums-Zeit-Wert.
Kalender- und Uhrzeitinformationen
Die Funktionen Kalender und Uhrzeit stellen Kalender- und Uhrzeitinformationen für die aktuelle Sprache des Benutzers bereit.
Verwenden Sie diese Funktionen u. a. zum Bereitstellen eines Dropdown-Steuerelements mit einer Liste von Auswahlmöglichkeiten.
Weitere Informationen finden Sie in der Dokumentation zu den Kalender- und Uhrzeit-Funktionen.