Suporte global
Nota
Microsoft Power Fx é o novo nome para a linguagem de fórmula de aplicações de tela. Estes artigos associados são um trabalho em curso à medida que extraímos o idioma das aplicações de tela, o integramos com outros produtos do Microsoft Power Platform e o disponibilizamos como open source. Comece com a Visão geral de Microsoft Power Fx para uma introdução ao idioma.
Tanto enquanto cria e enquanto executa a lógica, o texto exibido pelo Power Fx será apresentado nos idiomas apropriados. A escrita e apresentação de datas e números é adaptada para a sua região e idioma.
Por exemplo, algumas regiões do mundo utilizam um . (ponto) como separador decimal, enquanto outros utilizam a , (vírgula). Isto é o que o Excel também faz. Normalmente, isto não é feito noutras linguagens de programação, que utilizam um . canónico como separador decimal para todos os utilizadores em todo o mundo. Para ser o mais acessível possível para os criadores a todos os níveis, é importante que 3,14
seja um número decimal para uma pessoa em França que tenha usado essa sintaxe toda a sua vida.
As aplicações que cria também podem estar conscientes do mundo. Utilize o Idioma, Texto, Valor, DateValue e outras funções para adaptar o que é apresentado e utilizado como entrada em idiomas diferentes.
Definições de idioma
Ao utilizar o estúdio nativo ou um leitor nativo, o idioma utilizado é indicado pelo sistema operativo anfitrião. Para o Windows, esta definição pode ser controlado em "Todas as Definições" e, em seguida, nas definições de "Hora e idioma". O Windows também permite especificar os carateres a utilizar para o separador decimal, ao substituir a definição de idioma.
Ao utilizar as experiências Web, o idioma utilizado é indicado pelo browser. A maioria das predefinições de browser na definição do sistema de operativo anfitrião também oferecem uma forma de definir o idioma manualmente.
Ambiente de criação
O ambiente de criação adapta-se à definição de idioma do autor. A própria aplicação é armazenada de uma forma agnóstica de idioma, para que os autores que utilizam idiomas diferentes possam editar a mesma aplicação.
Nomes nas fórmulas
A maioria dos elementos na fórmula encontram-se sempre em inglês:
- Nomes de função: Se, Navegar, Recolher, etc.
- Nomes de propriedade de controlo: Screen.Fill, Button.OnSelect, Textbox.Font, etc.
- Nomes de enumeração: Color.Aqua, DataSourceInfo.MaxValue, FontWeight.Bold, etc.
- Registos de sinal: Compass.Heading, Location. Latitude, App.ActiveScreen, etc.
- Operadores: Principal, em, exactIn, etc.
Uma vez que a experiência de criação é localizada, o controlo e outros nomes de objeto irão aparecer no idioma nativo do autor. Em espanhol, alguns dos nomes do controlo aparecem como:
Ao inserir um destes controlos na sua aplicação, o respetivo nome será predefinido para inglês. Esta alteração é feita para estar coerente com os nomes de propriedade de controlo e o resto da fórmula. Por exemplo, Casilla listado acima é inserido como Caixa de verificação1.
Assim que um controlo é inserido, pode alterar o nome para o que quiser. Quando selecionado, o lado mais à esquerda do friso "Conteúdo" apresenta o nome do controlo. Ao selecionar este nome, uma caixa de texto é suspensa, onde pode editar o nome:
Se assim o desejar, pode mudar aqui o nome do controlo para Casilla1. O squiggly vermelho, neste caso apresentado por um browser, é porque o nome não é uma palavra espanhola e de nenhuma preocupação.
Pode utilizar quaisquer nomes que queira para:
- Nomes de controlos
- Nomes de coleções
- Nomes de variáveis de contexto
Separadores de fórmulas e operador de encadeamento
Alguns separadores e operadores irão deslocar-se com base no separador decimal do idioma do autor:
Separador decimal do idioma do autor | Separador decimal do Power Apps | Separador de lista do Power Apps | Operador de encadeamento do Power Apps |
---|---|---|---|
. (ponto ou período) | . (ponto ou período) | , (vírgula) | ; (ponto e vírgula) |
, (vírgula) | , (vírgula) | ; (ponto e vírgula) | ;; (ponto e vírgula duplo) |
A alteração no separador de lista do Power Apps é consistente com o que acontece com o separador de lista do Excel. Tem impacto sobre:
Por exemplo, considere a fórmula seguinte expressa num idioma e região que utiliza ponto ou período como separador decimal, tal como o Japão ou o Reino Unido:
Agora, veja esta mesma fórmula num idioma e região onde é utilizada uma vírgula para o separador decimal, tal como França ou Espanha:
O realce mostra os operadores que são alterados entre as duas versões. O operador de seleção de propriedade . (ponto) em Slider1.Value é sempre o mesmo, independentemente do separador decimal.
Internamente a fórmula não se altera, só é alterada a forma como é apresentada e editada pelo autor. Dois autores diferentes com dois idiomas diferentes podem ver e editar a mesma fórmula, com cada um a ver os operadores e os separadores adequados para o seu idioma.
Criar uma aplicação global
A aplicação que cria pode adaptar-se a idiomas diferentes, proporcionando uma experiência de utilizador excelente para os seus utilizadores em todo o mundo.
Função de idioma
A função Idioma devolve a etiqueta de idioma ao utilizador atual. Por exemplo, esta função devolve "pt-PT" para os utilizadores em Portugal e "de-DE" para utilizadores na Alemanha.
Entre outras coisas, pode utilizar Idioma para apresentar texto traduzido para os seus utilizadores. A sua aplicação pode incluir uma tabela dos valores traduzidos na sua aplicação:
E, em seguida, utilize uma fórmula como a seguinte para obter cadeias traduzidas da tabela:
LookUp( Table1, TextID = "Hello" && (LanguageTag = Left( Language(), 2 ) || IsBlank( LanguageTag ))).LocalizedText
As cadeias traduzidas noutros idiomas podem ser maiores do que no seu idioma. Em muitos casos, as etiquetas e outros elementos que apresentam as cadeias na sua interface de utilizador terão de ser maiores para caber.
Para obter mais informações, consulte a documentação para a função Idioma.
Formatação de números, datas e horas
Os números, datas e horas são escritos em diferentes formatos em diferentes partes o mundo. O significado das vírgulas, casas decimais e a ordem do mês, dia e ano variam de acordo com a localização.
A função Texto formata números e datas com a definição de idioma do utilizador.
O texto requer uma cadeia de caracteres de formato para saber como você deseja formatar o número ou a data. Esta cadeia de formato pode ter uma de duas formas:
- Uma enumeração com suporte global. Por exemplo, Text( Now(), DateTimeFormat.LongDate ). Esta fórmula irá formatar a data atual para um formato adequado do idioma. Este método é a forma preferencial para especificar a cadeia de formato.
- Uma cadeia de formato personalizado. Por exemplo, Text( Now(), "[$-en-US]dddd, mmmm dd, yyyy" ) apresenta o mesmo texto que a enumeração quando utilizado no idioma "en-US". A vantagem da cadeia de formato personalizado é que pode especificar exatamente o que pretende.
O "[$-en-US]" no início da cadeia de formato personalizado diz ao Texto em que idioma interpretar a cadeia de formato personalizado. Esta cadeia é inserida para si e predefinida para o idioma de criação. Normalmente, não tem de alterar esta cadeia. É útil quando os autores de diferentes idiomas estão a editar a mesma aplicação.
O terceiro argumento para Texto especifica o idioma a utilizar para o resultado da função. A predefinição é a definição de idioma do utilizador atual.
Para obter mais informações, consulte a documentação para a função Texto.
Leitura de números, datas e horas
Existem quatro funções para a leitura de números, datas e horas apresentadas pelo utilizador:
- Valor: Converte um número em uma cadeia de texto em um valor numérico.
- DateValue: Converte um valor de data em uma cadeia de texto em um valor de data/hora. Qualquer período de tempo especificado na cadeia de texto é ignorado.
- TimeValue: Converte um valor de hora em uma cadeia de texto em um valor de data/hora. Qualquer data especificada na cadeia de texto é ignorada.
- DateTimeValue: Converte um valor de data e hora em uma cadeia de texto em um valor de data/hora.
Se tiver utilizado o Excel, todas estas funções são combinadas numa função de Valor única. Estas são divididas aqui, uma vez que o Power Apps tem tipos separados para valores de data/hora e números.
Todas estas funções têm os mesmos argumentos:
- String, required: Uma cadeia de caracteres do utente. Por exemplo, uma cadeia escreve num controlo de Introdução de texto e lê a partir do controlo com a propriedade de Texto.
- Idioma, opcional: o idioma no qual interpretar a String. Por predefinição, a definição de idioma do utilizador.
Por exemplo:
- Value( "12,345.678", "en-US" ) ou Value( "12,345.678" ) quando localizado onde "en-US" é o idioma do utente retorna o número 12345.678, pronto para cálculos.
- DateValue( "1/2/01", "es-ES" ) ou DateValue( "1/2/01" ) quando localizado onde "es-ES" é o idioma do utente retorna o valor de data/hora 1 de fevereiro de 2001 à meia-noite.
- TimeValue( "11:43:02", "fr-FR" ) ou TimeValue( "11:43:02" ) quando localizado onde "fr-FR" é o idioma do utente retorna o valor de data/hora 1 de janeiro de 1970 às 11:43:02.
- DateTimeValue( "11:43:02 1/2/01", "de-DE" ) ou DateTimeValue( "11:43:02 1/2/01" ) quando localizado onde "de-DE" é o idioma do utente retorna o valor de data/hora 1 de fevereiro de 2001 às 11:43:02.
Para obter mais informações, consulte a documentação para as funções de Value e DateValue, TimeValue e DateTimeValue.
Informações de Calendário e Relógio
As funções de Calendário e Relógio apresentam informações de calendário e relógio para o idioma atual do utilizador.
Entre outras coisas, utilize estas funções para oferecer um controlo Pendente com uma lista de opções.
Para obter mais informações, consulte a documentação para as funções de Calendar e Clock.