Função Language

Aplica-se a: Aplicativos de tela Fluxos da área de trabalho Power Platform CLI

Retorna a marcação de idioma do usuário atual.

Descrição

A função Language retorna o idioma, o script e a região do usuário atual como uma marcação de idioma.

Use as informações de idioma para personalizar seu aplicativo entre as localidades. Por exemplo, se você estiver criando um aplicativo para ser usado na Itália e ne França, será possível usar Language para exibir automaticamente cadeias de caracteres em italiano e francês para os usuários nesses diferentes locais.

Marcas de idioma

Uma marca de idioma pode estar em um dos três formatos:

Retornar valor Description
"lg‑RE" lg é a abreviação de dois caracteres para o idioma e RE é a abreviação de dois caracteres para a região. Esse é o tipo de retorno mais comum. Por exemplo, "en-GB" é retornado para Grã-Bretanha.
"lg" lg é a abreviação de dois caracteres para o idioma. Este é o formato usado quando o Power Apps tem informações sobre o idioma, mas não tem informações para a região específica.
"lg‑scrp‑RE" lg é a abreviação de dois caracteres para o idioma e scrp é a abreviação de quatro caracteres para o script e RE é a abreviação de dois caracteres para a região.

O Power Apps usa o formato de marca de idiomas de IETF BCP-47.

Para ver a lista de marcas de idiomas com suporte, digite Value( "1", ) na barra de fórmulas ou na exibição avançada e percorra a lista de localidades sugerida para o segundo argumento.

As funções Text e Value também usam marcas de idioma. Use essas funções para converter de e para cadeias de caracteres de texto de uma maneira conhecida globalmente. Ao passar uma marcação de idioma para essas funções e se a região não fizer diferença, você pode usar apenas a parte do idioma da marcação.

Sintaxe

Language()

Exemplos

Localidade do usuário

Supõe-se que o sistema operacional do host e/ou navegador estejam usando a localidade padrão para o local.

Fórmula Local Valor de Devolução
Language() Lisboa, Portugal "pt-PT"
Language() Rio de Janeiro, Brasil "pt-BR"
Language() Atlanta, EUA "en-US"
Language() Manchester, Grã-Bretanha "en-GB"
Language() Paris, França "fr-FR"
Language() Roseau, Dominica "en"
Language() Belgrado, Sérvia "sr-cyrl-RS" ou "sr-latn-RS", dependendo das configurações do sistema do usuário

Tabela de localização

Uma abordagem simples para a localização é criar uma planilha do Excel mapeando um TextID definido pelo autor para um texto traduzido para o idioma do usuário. Embora você possa usar uma coleção ou qualquer outra fonte de dados para essa tabela, escolhemos Excel porque ele é fácil de editar e gerenciar fora do aplicativo por tradutores.

  1. Crie a seguinte tabela no Excel:

    Tabela de localização.

    A entrada em branco para a coluna Idioma será usada como padrão se não houver nenhuma cadeia de caracteres de texto específica encontrada para um determinado idioma. Essa entrada deve aparecer após todas as outras entradas para um determinado TextID.

    Para nossos propósitos, precisamos apenas examinar o idioma da localidade e não a região. Se as considerações regionais fossem importantes, poderíamos ter incluído o valor da marcação de idioma completo na tabela acima.

  2. Use a faixa de opções Insert, o comando Table, para tornar isso em uma tabela do Excel adequada. Por padrão, ela será nomeada Table1, mas você pode chamá-la como quiser com a faixa de opções Design/Ferramentas da Tabela e a caixa de texto Nome de tabela: mais à esquerda.

  3. Salve o arquivo do Excel no sistema de arquivos local.

  4. No Power Apps, clique ou toque a guia Fontes de Dados e, em seguida, clique ou toque em Adicionar fonte de dados.

  5. Clique ou toque em Adicionar dados estáticos ao seu aplicativo, clique ou toque no arquivo do Excel salvo e, em seguida, clique ou toque em Abrir.

  6. Selecione a tabela que criou e clique ou toque em Conectar.

Em seu aplicativo, onde quer que tenha usado o texto "Hello" antes, use esta fórmula em vez disso:

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

Essa fórmula pesquisará o valor de LocalizedText adequado para o idioma do usuário e, se não for encontrado, voltará para a versão em branco padrão.

Lembre-se de que cadeias de caracteres traduzidas para outros idiomas podem ser significativamente 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.

Serviço de tradução

Você pode traduzir o texto sob demanda usando um serviço de tradução, como o serviço Microsoft Translator:

  1. No Power Apps, clique ou toque a guia Fontes de Dados e, em seguida, clique ou toque em Adicionar fonte de dados.
  2. Clique ou toque em Microsoft Translator.

Em seu aplicativo, onde quer que tenha usado o texto "Hello" antes, use esta fórmula em vez disso:

  • MicrosoftTranslator.Translate( "Hello", Language() )

O serviço Microsoft Translator usa as mesmas marcas de idioma que a função Language retorna.

Essa abordagem tem algumas desvantagens em comparação com o exemplo anterior que utilizou uma tabela previamente traduzida de cadeias de caracteres de texto:

  • A tradução levará tempo para ser concluída, exigindo uma chamada para um serviço na rede. Isso resultará em um atraso para exibir o texto traduzido em seu aplicativo.
  • A tradução será mecânica e pode não ser o que você prevê ou não ser a melhor opção para a situação dentro de seu aplicativo.