Udostępnij za pośrednictwem


Wsparcie globalne

Uwaga

Microsoft Power Fx to nowa nazwa języka formuł dla aplikacji kanw. Te artykuły są pracą w toku, gdyż stale wyodrębniamy język z aplikacji kanw, integrujemy go z innymi produktami Microsoft Power Platform i udostępniamy jako rozwiązanie open source. Zacznij od przeglądu Microsoft Power Fx, aby znaleźć wprowadzenie do języka.

Zarówno podczas tworzenia, jak i uruchamiania logiki tekst wyświetlany przez Power Fx będzie wyświetlany w odpowiednich językach. Wpisywanie i wyświetlanie dat i liczb również zostało dostosowane do danego języka i regionu.

Na przykład niektóre regiony świata używają znaku „.” (kropka) jako separatora dziesiętnego, a w innych stosuje się znak , (przecinek). Tak samo działa też program Excel. Nie jest to często stosowane w innych językach programowania, które używają kropki dziesiętnej . jako separatora dziesiętnego dla wszystkich użytkowników na całym świecie. Aby twórcom we wszystkich językach było wygodnie, należy pamiętać, że 3,14 to liczba dziesiętna dla osoby we Francji, która korzystała z tej składni całe swoje życie.

Tworzone aplikacje również będą wspierane w skali globalnej. Za pomocą funkcji Language, Text, Value, DateValue i innych możesz dostosować elementy wyświetlane i używane jako dane wejściowe w różnych językach.

Ustawienia językowe

W przypadku używania natywnego studio lub odtwarzacza język jest określany przez system operacyjny hosta. W przypadku systemu Windows można kontrolować to ustawienie w sekcji „Wszystkie ustawienia” i obszarze „Czas i język”. Ponadto system Windows umożliwia określenie znaków pełniących funkcję separatora dziesiętnego, które będą zastępować ustawienia języka.

W przypadku korzystania z internetowych środowisk użytkownika używany język jest określany przez przeglądarkę. Większość przeglądarek stosuje domyślnie ustawienia systemu operacyjnego hosta. Niektóre umożliwiają ręczne ustawienie języka.

Środowisko tworzenia

Środowisko tworzenia dostosowuje się do ustawień języka autora. Aplikacja jest przechowywana w sposób niezależny od języka, więc autorzy używający innych języków nadal mogą edytować tę samą aplikację.

Nazwy w formułach

Większość elementów w formule to elementy w języku angielskim:

  • Nazwy funkcji: If, Navigate, Collect itp.
  • Nazwy właściwości kontrolek: Screen.Fill, Button.OnSelect, Textbox.Font itp.
  • Nazwy wyliczeń: Color.Aqua, DataSourceInfo.MaxValue, FontWeight.Bold itp.
  • Rekordy sygnałów: Compass.Heading, Location. Latitude, App.ActiveScreen itp.
  • Operatory: Parent, in, Exact i tak dalej.

Ponieważ środowisko tworzenia jest zlokalizowane, kontrolki i inne nazwy obiektów będą wyświetlane w języku ojczystym autora. W języku hiszpańskim niektóre z kontrolek będą nazwane tak, jak poniżej:

Nazwy kontrolek w języku hiszpańskim.

Po wstawieniu kontrolki do aplikacji nazwy będą domyślnie w języku angielskim. Ta zmiana ma to na celu zapewnienie spójności z nazwami właściwości kontrolek oraz pozostałymi elementami formuły. Na przykład kontrolka Casilla wymieniona powyżej zostanie wstawiona jako Checkbox1.

Po wstawieniu kontrolki można zmienić jej nazwę wedle uznania. Gdy kontrolka jest zaznaczona, jej nazwa jest wyświetlana po lewej stronie wstążki „Zawartość”. Wybierając tę nazwę, można otworzyć rozwijane pole tekstowe umożliwiające edytowanie nazwy:

Doświadczenia w języku hiszpańskim.

Jeśli chcesz, możesz ponownie zmienić nazwę kontrolki na Casilla1. Czerwona linia falista jest w tym przypadku wyświetlana przez przeglądarkę, ponieważ nazwa nie jest hiszpańskim słowem. Nie ma ona znaczenia.

Dla poniższych elementów możesz użyć dowolnych nazw:

  • Nazwy kontrolek
  • Nazwy kolekcji
  • Nazwy zmiennych kontekstowych

Separatory i operator łańcucha formuły

Niektóre separatory i operatory będą ulegać zmianie w oparciu o separator dziesiętny języka autora:

Separator dziesiętny języka autora Separator dziesiętny Power Apps Separator listy Power Apps Operator łańcuchowy Power Apps
. (kropka lub przecinek) . (kropka lub przecinek) , (przecinek) ; (średnik)
, (przecinek) , (przecinek) ; (średnik) ;; (podwójny średnik)

Zmiana separatora listy usługi Power Apps jest spójna ze zmianami separatora listy programu Excel. Ma to wpływ na następujące elementy:

Załóżmy na przykład, że następujący wzór jest wyrażony w języku i regionie, w którym jako separatorem dziesiętnym jest używana kropka lub kropka (np. Japonia lub Wielka Brytania):

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.

Teraz jest wyświetlany ten sam wzór w języku i regionie, w którym dla separatora dziesiętnego, takiego jak Francja lub Hiszpania, jest używany przecinek.

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.

W podświetleniu będą widoczne operatory, które zastąpią między dwiema wersjami. Operator wyboru właściwości . (kropka lub kropka) w Slider1.Value jest zawsze taki sam, bez względu na separator dziesiętny.

Wewnętrznie formuła nie ulega zmianie — wszystkie zmiany dotyczą sposobu wyświetlania i edytowania przez autora. Dwóch różnych autorów używających dwóch różnych języków może wyświetlić i edytować tę samą formułę. Każdy z nich będzie widzieć odpowiednie separatory i operatory dla swojego języka.

Tworzenie aplikacji globalnej

Utworzona aplikacja może dostosowywać się do różnych języków, zapewniając użytkownikom na całym świecie wspaniałe środowisko.

Funkcja Language

Funkcja Language zwraca tag języka dla bieżącego użytkownika. Przykładowo ta funkcja zwróci wartość „en-GB” w przypadku użytkowników w Wielkiej Brytanii oraz „de-DE” w przypadku użytkowników w Niemczech.

Funkcji Language możesz używać między innymi do wyświetlania przetłumaczonego tekstu swoim użytkownikom. Aplikacja może zawierać tabelę przetłumaczonych wartości w aplikacji:

Tabela z zlokalizowanym tekstem.

Następnie może używać formuły, takiej jak poniżej, aby wyciągać przetłumaczone ciągi z tabeli:

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

Przetłumaczone ciągi w innych językach mogą być dłuższe niż w Twoim języku. W wielu przypadkach etykiety i inne elementy wyświetlające ciągi w interfejsie użytkownika należy dostosować, aby pomieścić tekst.

Aby uzyskać więcej informacji, zobacz dokumentację funkcji Language.

Formatowanie liczb, dat i godzin

Liczby, daty i godziny są zapisywane w różnych formatach w różnych częściach świata. Znaczenie przecinków, liczb dziesiętnych i kolejności miesiąca, daty i roku różni się w zależności od miejsca.

Funkcja Text formatuje liczby i daty przy użyciu ustawień języka użytkownika.

Tekst wymaga ciągu formatującego, aby wiedzieć, jak chcesz sformatować liczbę lub datę. Ten ciąg formatowania może przyjąć jedną z dwóch form:

  • Wyliczenie z informacjami na potrzeby obsługi globalnej. Na przykład Text( Now(), DateTimeFormat.LongDate ). Ta formuła będzie formatować bieżącą datę przy użyciu formatu odpowiedniego dla danego języka. Ta metoda to preferowany sposób określania ciągu formatowania.
  • Niestandardowy ciąg formatowania. Na przykład formuła Text( Now(), "[$-en-US]dddd, mmmm dd, yyyy" ) będzie wyświetlać ten sam tekst co wyliczenie w przypadku użycia języka „en-US”. Zaletą niestandardowego ciągu formatowania jest możliwość dokładnego określenia żądanego formatu.

Element „[$-en-US]” z przodu niestandardowego ciągu formatowania informuje funkcję Text o języku, w którym należy interpretować niestandardowy ciąg formatowania. Ten ciąg jest wstawiany za użytkownika i domyślnie przyjmuje wartość języka tworzenia. Zwykle nie musisz zmieniać tego ciągu. Jest to przydatne w sytuacji, w której autorzy korzystający z różnych języków edytują tę samą aplikację.

Trzeci argument funkcji Text określa język, którego należy użyć w przypadku wyniku funkcji. Wartość domyślna jest zgodna z ustawieniem języka bieżącego użytkownika.

Aby uzyskać więcej informacji, zobacz dokumentację funkcji Text.

Odczytywanie liczb, dat i godzin

Istnieją cztery funkcje odczytujące liczby, daty i godziny podane przez użytkownika:

  • Wartość: Konwertuje liczbę w ciągu tekstowym na wartość liczbową.
  • DateValue: konwertuje wartość daty w ciągu tekstowym na wartość daty/godziny. Wszelkie godziny określone w ciągu tekstowym będą ignorowane.
  • TimeValue: konwertuje wartość czasu w ciągu tekstowym na wartość daty/godziny. Wszelkie daty określone w ciągu tekstowym będą ignorowane.
  • DateTimeValue: konwertuje wartość daty i godziny w ciągu tekstowym na wartość daty/godziny.

W przypadku użycia programu Excel wszystkie te funkcje są połączone w jednej funkcji Value. Zostały tutaj rozdzielone, ponieważ usługa Power Apps ma oddzielne typy dla wartości daty/godziny i liczb.

Wszystkie te funkcje mają takie same argumenty:

  • Ciąg, wymagany: ciąg od użytkownika. Przykładowo ciąg wpisywany do kontrolki Wprowadzanie tekstu i odczytywany z kontrolki z właściwością Tekst.
  • Język, opcjonalnie: język, w którym ma być interpretowany ciąg . Domyślny język jest zgodny z ustawieniami użytkownika.

Na przykład:

  • Value( "12,345.678", "en-US" ) lub Value( "12,345.678" ), gdy znajduje się w miejscu, w którym "en-US" jest językiem użytkownika, zwraca liczbę 12345.678, gotową do obliczeń.
  • Funkcja DateValue( "1/2/01", "es-ES" ) lub DateValue( "1/2/01" ), jeśli znajduje się w miejscu, w którym "es-ES" jest językiem użytkownika, zwraca wartość daty/godziny 1 lutego 2001 roku o północy.
  • TimeValue( "11:43:02", "fr-FR" ) lub TimeValue( "11:43:02" ), gdy znajduje się w miejscu, w którym "fr-FR" jest językiem użytkownika, zwraca wartość daty/godziny 1 stycznia 1970 r. o godzinie 11:43:02.
  • DateTimeValue( "11:43:02 1/2/01", "de-DE" )) lub DateTimeValue( "11:43:02 1/2/01" ), gdy znajduje się w miejscu, w którym "de-DE" jest językiem użytkownika, zwraca wartość daty/godziny 1 lutego 2001 o godzinie 11:43:02.

Aby uzyskać więcej informacji, zobacz dokumentację funkcji Value oraz DateValue, TimeValue i DateTimeValue, a także artykuł Praca z datami i godzinami.

Informacje dotyczące funkcji Kalendarz i Zegar

Funkcje Kalendarz i Zegar zapewniają informacje dotyczące kalendarza i zegara dla bieżącego języka użytkownika.

Między innymi można użyć tych funkcji do zapewnienia listy opcji kontrolce Lista rozwijana.

Aby uzyskać więcej informacji, zobacz dokumentację funkcji Kalendarz i Zegar.