Asistencia global
Nota
Microsoft Power Fx é o novo nome da linguaxe de fórmulas para aplicacións de lenzo. Estes artigos son un traballo en curso a medida que extraemos o idioma das aplicacións de lenzo, o integramos con outros produtos de Microsoft Power Platform e o poñemos a disposición como código aberto. Comece coa Visión xeral de Microsoft Power Fx para ver unha introdución á lingaxe.
Durante a construción e execución unha lóxica, o texto amosado por Power Fx amosarase nos idiomas adecuados. Escribir e amosar datas e números está adaptado ao seu idioma e rexión particulares.
Por exemplo, algunhas rexións do mundo usan un . (punto) como separador decimal, mentres que outras usan unha coma , (coma). Isto é o que fai Excel tamén. Isto normalmente non se fai noutras linguaxes de programación, que normalmente usan un . canónico como separador decimal para todos os usuarios de todo o mundo. Para ser o máis accesible posible para os fabricantes de todos os niveis, é importante que 3,14
sexa un número decimal para unha persoa en Francia que usou esa sintaxe toda a vida.
As aplicacións que crea tamén poden ser conscientes globalmente. Use as funcións Language, Text, Value e DateValue e outras para adaptar o contido que se mostra e se usa como entrada en diferentes idiomas.
Cando se usa o estudo nativo ou un reprodutor nativo, o idioma empregado é proporcionado polo sistema operativo. Para Windows, esta configuración pódese controlar en "Todas as opcións" e despois en "Hora e idioma". Windows tamén lle permite especificar os caracteres a empregar para o separador decimal, anulando a configuración do idioma.
Ao usar as experiencias web, o explorador proporciona o idioma empregado. A maioría dos exploradores teñen como valor predefinido a configuración do sistema operativo do servidor e algúns tamén fornecen un xeito de configurar o idioma manualmente.
O ambiente de creación adáptase á configuración de idioma do autor. A aplicación en si almacénase nunha forma agnóstica do idioma, de xeito que os autores que usan diferentes idiomas poden editar a mesma aplicación.
A maioría dos elementos da fórmula están sempre en inglés:
- Nomes de funcións: If, Navigate, Collect etc.
- Nomes das propiedades de control: Screen.Fill, Button.OnSelect, Textbox.Font etc.
- Nomes de enumeracións: Color.Aqua, DataSourceInfo.MaxValue, FontWeight.Bold etc.
- Rexistros de sinais: Compass.Heading, Location. Latitude, App.ActiveScreen etc.
- Operadores: Parent, in, exactIn etc.
Cando a experiencia de creación está localizada, o control e outros nomes de obxectos aparecerán no idioma nativo do autor. En español, algúns dos nomes de control aparecen do seguinte xeito:
Cando insire un destes controis na súa aplicación, o seu nome pasará por defecto a inglés. Este cambio realízase por coherencia cos nomes das propiedades de control e co resto da fórmula. Por exemplo, o valor de Casilla indicado anteriormente está inserido como Checkbox1.
Despois de inserir un control, pode cambiar o nome como queira. Se está seleccionado, o lado esquerdo da fita "Contido" mostra o nome do control. Ao seleccionar este nome, despregarase unha caixa de texto onde pode editar o nome:
Se desexa, aquí pode cambiar o nome do control a Casilla1. O zigzag vermello, neste caso amosado por un navegador, débese a que o nome non é unha palabra castelá e non preocupa.
Pode usar os nomes que queira para:
- Nomes de controis
- Nomes de coleccións
- Nomes de variables de contexto
Algúns separadores e operadores cambiarán en función do separador decimal do idioma do autor:
Separador decimal do idioma do autor | Separador decimal de Power Apps | Separador de listas de Power Apps | Operador de encadeamento de Power Apps |
---|---|---|---|
. (punto) | . (punto) | , (coma) | ; (punto e coma) |
, (coma) | , (coma) | ; (punto e coma) | ;; (punto e coma) |
O cambio no separador de listas de Power Apps é coherente co que lle pasa ao separador de listas de Excel. Afecta ao seguinte:
Por exemplo, considere a seguinte fórmula expresada nun idioma e rexión que usa punto como separador decimal, como Xapón ou Reino Unido:
Vexa esta mesma fórmula nun idioma e rexión onde se usa unha coma para o separador decimal, como Francia ou España:
O realce mostra os operadores que cambian entre as dúas versións. O operador de selección de propiedades . (punto) en Slider1.Value sempre é o mesmo, non importa cal sexa o separador decimal.
Internamente a fórmula non cambia, o único que cambia é como se mostra e como a edita o autor. Dous autores diferentes que usen dous idiomas diferentes poden ver e editar a mesma fórmula, cada un vendo os operadores e separadores adecuados para o seu idioma.
A aplicación que cree pode adaptarse a diferentes idiomas, proporcionando unha excelente experiencia para os usuarios de todo o mundo.
A función Language devolve a etiqueta de idioma do usuario actual. Por exemplo, esta función devolve "en-GB" para usuarios en Reino Unido e "de-DE" para usuarios en Alemaña.
Entre outras cousas, pode usar Language para mostrar o texto traducido para os usuarios. A aplicación pode incluír unha táboa de valores traducidos na aplicación:
A continuación, use unha fórmula como a seguinte para extraer cadeas traducidas da táboa:
LookUp( Table1, TextID = "Hello" && (LanguageTag = Left( Language(), 2 ) || IsBlank( LanguageTag ))).LocalizedText
As cadeas traducidas noutros idiomas poden ser máis longas que no seu idioma. En moitos casos, as etiquetas e outros elementos que mostran as cadeas na súa interface de usuario terán que ser máis amplos para adaptarse.
Para obter máis información, consulte a documentación da función Language.
Os números, datas e horas escríbense en diferentes formatos nas diferentes partes do mundo. O significado de comas, decimais e a orde de mes, data e ano varían de lugar a lugar.
A función Text formata os números e as datas coa configuración de idioma do usuario.
O texto require unha cadea de formato para saber como queres formatar o número ou a data. Esta cadea de formato pode ter unha das dúas formas seguintes:
- Unha enumeración con conciencia global. Por exemplo, Text( Now(), DateTimeFormat.LongDate ). Esta fórmula dará formato á data actual nun formato adecuado para o idioma. Este método é o xeito preferido de especificar a cadea de formato.
- Unha cadea de formato personalizada. Por exemplo, Text( Now(), "[$-en-US]dddd, mmmm dd, yyyy" ) mostra o mesmo texto que a enumeración cando se usa en "en-US". A vantaxe da cadea de formato personalizada é que pode especificar exactamente o que desexa.
O valor "[$-en-US]" na parte dianteira da cadea de formato personalizada indica a Text en que idioma interpretar a cadea de formato personalizada. Esta cadea está inserida para vostede e está predeterminada no seu idioma de autor. Normalmente non precisa cambiar esta cadea. É útil cando autores de diferentes idiomas están editando a mesma aplicación.
O terceiro argumento de Text especifica que idioma empregar para o resultado da función. O valor predefinido é a configuración de idioma do usuario actual.
Para obter máis información, consulte a documentación da función Text.
Hai catro funcións para ler números, datas e horas proporcionadas polo usuario:
- Valor: converte un número nunha cadea de texto nun valor numérico.
- DateValue: converte un valor de data nunha cadea de texto nun valor de data/hora. Ignórase en calquera momento especificado na cadea de texto.
- TimeValue: converte un valor de tempo nunha cadea de texto nun valor de data/hora. Ignórase calquera data especificada na cadea de texto.
- DateTimeValue: converte un valor de data e hora nunha cadea de texto nun valor de data/hora.
Se empregou Excel, todas estas funcións combínanse nunha única función Value. Están divididas aquí porque Power Apps ten tipos distintos de valores de data/hora e números.
Todas estas funcións teñen os mesmos argumentos:
- Cadea, necesaria: unha cadea do usuario. Por exemplo, unha cadea escribe nun control Entrada de texto e le do control coa propiedade Texto.
- Idioma, opcional: a lingua na que se interpreta a Cadea. Por defecto, úsase a configuración de idioma do usuario.
Por exemplo:
- Valor( "12,345.678", "en-US" ) ou Valor( "12,345.678" ) cando se atopa onde "en-US" é o o idioma do usuario devolve o número 12345.678, listo para os cálculos.
- DataValue( "1/2/01", "es-ES" ) ou DateValue( "1/2/01" ) cando se localice onde "es-ES" é o idioma do usuario devolve o valor de data/hora 1 de febreiro de 2001 á medianoite.
- TimeValue( "11:43:02", "fr-FR" ) ou TimeValue( "11:43:02" ) cando se localice onde "fr-FR" é o idioma do usuario devolve o valor de data/hora 1 de xaneiro de 1970 ás 11:43:02.
- DateTimeValue( "11:43:02 1/2/01", "de-DE" ) ou DateTimeValue( "11:43:02 1/2/01" ) cando se localice onde "de-DE" é o idioma do usuario devolve o valor de data/hora 1 de febreiro de 2001 ás 11:43:02.
Para obter máis información, consulte a documentación das funcións Valor e DateValue, TimeValue e DateTimeValue.
As funcións Calendario e Reloxo fornecen información do calendario e do reloxo para o idioma actual do usuario.
Entre outras cousas, use estas funcións para proporcionar un control Menú despregable cunha lista de opcións.
Para obter máis información, consulte a documentación das funcións Calendario e Reloxo.