Suporte global
Observação
O Microsoft Power Fx é o novo nome da linguagem de fórmula para aplicativos de tela. Estes artigos são um trabalho em andamento à medida que extraímos a linguagem de aplicativos de tela, a integramos a outros produtos do Microsoft Power Platform e a disponibilizamos como software livre. Comece com Visão geral do Microsoft Power Fx para obter uma introdução à linguagem.
Durante a construção e execução da lógica, o texto exibido pelo Power Fx será exibido nas linguagens apropriadas. Digitar e exibir datas e números é adaptado para sua região e idioma específicos.
Por exemplo, algumas regiões do mundo usam um ponto . como um separador decimal enquanto outros usam uma vírgula ,. É isso que o Excel também faz. Isso geralmente não é feito em outras linguagens de programação, que usam um ponto canônico . como separador decimal para todos os usuários em todo o mundo. Para ser o mais acessível possível para os fabricantes em todos os níveis, é importante que 3,14
seja um número decimal para uma pessoa na França que usou essa sintaxe durante toda a vida.
Os aplicativos que você cria também podem ser conhecidos globalmente. Use Language, Text, Value, DateValue e outras funções para adaptar o que será exibido e usado como entrada em diferentes linguagens.
Ao usar o estúdio nativo ou um reprodutor nativo, o idioma usado será fornecido pelo sistema operacional do host. Para o Windows, essa configuração pode ser controlada nas configurações "Todas as configurações" e, em seguida, em "Tempo e idioma". O Windows também permite que você especifique os caracteres a serem usados para o separador decimal, substituindo a configuração de idioma.
Ao utilizar serviços da Web, o idioma usado será fornecido pelo navegador. A maioria dos navegadores utiliza como padrão a configuração do sistema operacional do host, e alguns também fornecem uma maneira de definir o idioma manualmente.
O ambiente de criação é adaptado para a configuração de idioma do autor. O aplicativo em si é armazenado de maneira independente do idioma, para que os autores que usam diferentes idiomas possam editar o mesmo aplicativo.
A maioria dos elementos na fórmula estão sempre em inglês:
- Nomes de função: If, Navegar, Coleta e assim por diante.
- Nomes de propriedade de controle: Screen.Fill, Button.OnSelect, Textbox.Font e assim por diante.
- Nomes de enumeração: Color.Aqua, DataSourceInfo.MaxValue, FontWeight.Bold e assim por diante.
- Registros de sinal: Compass.Heading, Location. Latitude, App.ActiveScreen e assim por diante.
- Operadores: Pai, em, exactIn e assim por diante.
Como a experiência de criação é localizada, nomes de controles e de outros objetos aparecerão no idioma nativo do autor. Em espanhol, alguns dos nomes de controle aparecem como:
Quando você insere um desses controles em seu aplicativo, seu nome será padronizado para o inglês. Essa alteração é feita para manter a consistência com os nomes de propriedade do controle e com o restante da fórmula. Por exemplo, Casilla listado acima será inserido como Checkbox1.
Depois de inserir um controle, é possível alterar o nome conforme desejar. Quando selecionado, o lado esquerdo mais distante da faixa de opções "Conteúdo" exibe o nome do controle. Selecione esse nome para exibir uma caixa de texto na qual você pode editar o nome:
Se desejar, aqui você poderá renomear o controle para Casilla1. A linha vermelha ondulada, nesse caso, exibida por um navegador, aparece porque o nome não é uma palavra em espanhol e isso não é um problema.
Você pode usar qualquer nome desejar para:
- Nomes de controles
- Nomes de coleções
- Nomes de variáveis de contexto
Alguns separadores e operadores mudarão 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) | . (ponto) | , (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. Ele afeta:
Por exemplo, considere a seguinte fórmula expressa em um idioma e região que usa ponto como separador decimal, como Japão ou Reino Unido:
Agora, veja a mesma fórmula em um idioma e região em que uma vírgula é usada como separador decimal, como França ou Espanha:
O destaque mostra os operadores que mudam entre as duas versões. O operador de seleção da propriedade . em Slider1.Value sempre é o mesmo, independentemente de qual seja o separador decimal.
Internamente, a fórmula não é alterada, tudo que é alterado é como ela é exibida e editada pelo autor. Dois autores diferentes usando dois idiomas diferentes podem exibir e editar a mesma fórmula, com cada um vendo os separadores e operadores apropriados para seu idioma.
O aplicativo que você cria pode se adaptar a diferentes idiomas, fornecendo uma excelente experiência de usuário para os usuários em todo o mundo.
A função Language retorna a marca de linguagem para o usuário atual. Por exemplo, a função retornará "en-GB" para usuários na Grã-Bretanha e "de-DE" para os usuários na Alemanha.
Entre outras coisas, você pode usar Language para exibir o texto traduzido para seus usuários. Seu aplicativo pode incluir uma tabela de valores traduzidos em seu aplicativo:
E, em seguida, usar uma fórmula como a seguinte para retirar cadeias de caracteres traduzidas da tabela:
LookUp( Table1, TextID = "Hello" && (LanguageTag = Left( Language(), 2 ) || IsBlank( LanguageTag ))).LocalizedText
Cadeias de caracteres traduzidas em outros idiomas podem ser maiores do que as que estiverem em seu idioma. Em muitos casos, os rótulos e outros elementos que exibem as cadeias de caracteres na interface do usuário precisarão ser maiores para acomodá-las.
Para obter mais informações, consulte a documentação sobre a função Language.
Números, datas e horas são gravados em formatos diferentes em diferentes partes do mundo. O significado de vírgulas, casas decimais e a ordem de data, mês e ano variam de local para local.
A função Text formata números e datas usando a configuração de idioma do usuário.
Texto requer uma string de formato para saber como você deseja formatar o número ou a data. Essa cadeia de caracteres de formato pode ter uma destas duas formas:
- Uma enumeração de reconhecimento global. Por exemplo, Text( Now(), DateTimeFormat.LongDate ). Essa fórmula formatará a data atual em um formato apropriado para o idioma. Esse método é a maneira preferencial para especificar a cadeia de caracteres de formato.
- Uma cadeia de caracteres de formato personalizado. Por exemplo, Text( Now(), "[$-en-US]dddd, mmmm dd, yyyy" ) exibe o mesmo texto que a enumeração quando usada no idioma "en-US". A vantagem da cadeia de caracteres de formato personalizado é que você pode especificar exatamente o que deseja.
O "[$-en-US]" na frente da cadeia de caracteres de formato personalizada informa à função Text em qual idioma interpretar a cadeia de caracteres de formato personalizada. Essa cadeia de caracteres é inserida por você e é padronizada para seu idioma de criação. Normalmente, não será necessário alterá-la. É útil quando autores de diferentes idiomas estiverem editando o mesmo aplicativo.
O terceiro argumento de Text especifica qual idioma usar para o resultado da função. O padrão é a configuração de idioma do usuário atual.
Para obter mais informações, consulte a documentação para a função Text.
Há quatro funções para ler números, datas e horas fornecidos pelo usuário:
- Valor: Converte um número em uma sequência de texto em um valor numérico.
- DateValue: Converte um valor de data em uma sequência de texto em um valor de data/hora. Qualquer horário especificado na cadeia de texto é ignorado.
- TimeValue: Converte um valor de tempo em uma sequência 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 string de texto em um valor de data/hora.
Se você tiver usado o Excel, todas essas funções serão combinadas na única função Value. Elas são divididas aqui um vez que o Power Apps tem tipos separados de valores de data/hora e números.
Todas estas funções têm os mesmos argumentos:
- String, obrigatório: Uma string do usuário. Por exemplo, uma cadeia de caracteres insere dados em um controle Entrada de texto e lê o controle com a propriedade Texto.
- Idioma, opcional: O idioma no qual interpretar a String. Por padrão, a configuração de idioma do usuário.
Por exemplo:
- Value( "12,345.678", "en-US" ) ou Value( "12,345.678" ) quando localizado onde "en-US" é o idioma do usuário, 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 usuário, 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 usuário, 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 usuário, 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 Value e DateValue, TimeValue e DateTimeValue.
As funções Calendar e Clock fornecem informações de calendário e relógio para a linguagem atual do usuário.
Entre outras coisas, use essas funções para oferecer um controle Lista suspensa com uma lista de opções.
Para obter mais informações, consulte a documentação sobre as funções Calendar e Clock.