Restituisce il tag di lingua dell'utente corrente.

Descrizione

La funzione Language restituisce lingua, script e area geografica dell'utente corrente come tag di lingua.

Usare le informazioni sulla lingua per personalizzare un'app per varie impostazioni locali. Ad esempio, se si sta creando un'app che verrà usata in Italia e in Francia, è possibile usare la funzione Language per visualizzare automaticamente stringhe in italiano e francese per gli utenti nei rispettivi paesi.

Tag di lingua

Un tag di lingua può avere tre formati:

Valore restituito Descrizione
"lg‑RE" lg è l'abbreviazione di due caratteri per la lingua e RE è l'abbreviazione di due caratteri per l'area geografica. Questo è il tipo restituito più comune. Ad esempio, "en-GB" viene restituito per la Gran Bretagna.
"lg" lg è l'abbreviazione di due caratteri per la lingua. Questo è il formato usato quando PowerApps ha informazioni sulla lingua, ma non informazioni per l'area geografica.
"lg‑scrp‑RE" lg è l'abbreviazione di due caratteri per la lingua, scrp è l'abbreviazione di quattro caratteri per lo script e RE è l'abbreviazione di due caratteri l'area geografica.

PowerApps usa il formato del tag di lingua IETF BCP-47.

Per vedere l'elenco dei tag delle lingue supportate, digitare Value( "1", ) nella barra della formula o nella visualizzazione avanzata e scorrere l'elenco delle impostazioni locali consigliate per il secondo argomento.

Le funzioni Text e Value usano anche i tag di lingua. Usare queste funzioni per la traduzione di stringhe di testo in modo globale. Quando si passa un tag di lingua a queste funzioni e l'area geografica non è importante, è possibile usare solo la parte del linguaggio del tag.

Sintassi

Language()

Esempi

Impostazioni locali dell'utente

Si presuppone che il sistema operativo host o il browser usino le impostazioni locali predefinite per l'area geografica.

Formula Percorso Valore restituito
Language() Lisbona, Portogallo "pt-PT"
Language() Rio de Janeiro, Brasile "pt-BR"
Language() Atlanta, USA "en-US"
Language() Manchester, Gran Bretagna "en-GB"
Language() Parigi, Francia "fr-FR"
Language() Roseau, Repubblica dominicana "en"
Language() Belgrado, Serbia e Montenegro "sr-cyrl-RS" o "sr-latn-RS", a seconda delle impostazioni di sistema dell'utente

Tabella di localizzazione

Un approccio semplice alla localizzazione consiste nel creare un foglio di calcolo di Excel eseguendo il mapping di un autore definito TextID per un testo tradotto nella lingua dell'utente. Sebbene sia possibile usare una raccolta o qualsiasi altra origine dati per questa tabella, un foglio di calcolo di Excel è più adatto per la modifica e la gestione all'esterno dell'app da parte dei traduttori.

  1. In Excel, creare la tabella seguente:

    La voce con blank nella colonna Language verrà usata come impostazione predefinita se non è presente alcuna stringa di testo specifico per una determinata lingua. Questa voce deve essere inclusa dopo tutte le altre voci per un determinato TextID.

    A questo scopo, è necessario esaminare la lingua delle impostazioni locali e non dell'area geografica. Se fossero importanti le considerazioni regionali, sarebbe opportuno includere il valore di tag di lingua completo della tabella precedente.

  2. Usare il comando Tabella della barra multifunzione Inserisci per eseguire questa operazione in una tabella di Excel. Per impostazione predefinita, verrà denominata Tabella1 , ma è possibile assegnarle un altro nome nella casella di testo Nome tabella che si trova sul lato sinistro della barra multifunzione Strumenti tabella/Progettazione.

  3. Salvare il file di Excel nel file system locale.

  4. In PowerApps, nel riquadro di destra, fare clic su o toccare la scheda Origini dati e quindi fare clic su o toccare Aggiungi origine dati.

  5. Fare clic su o toccare Aggiungi dati statici all'app, fare clic su o toccare il file di Excel salvato, quindi fare clic su o toccare Apri.

  6. Selezionare la tabella creata e fare clic su o toccare Connetti.

Nell'app, nel punto in cui dovrebbe essere usato il testo "Hello" in precedenza, usare invece questa formula:

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

Questa formula ricerca il valore di LocalizedText appropriato per la lingua dell'utente e, se non lo trova, restituirà il valore predefinito blank.

Tenere presente che le stringhe tradotte in altre lingue potrebbero essere molto più lunghe di quelle nella propria lingua. In molti casi, le etichette e gli altri elementi che consentono di visualizzare le stringhe nell'interfaccia utente dovranno essere più larghi per consentire l'adattamento.

Servizio di traduzione

È possibile tradurre il testo su richiesta tramite un servizio di traduzione, ad esempio il servizio Microsoft Translator:

  1. In PowerApps, nel riquadro di destra, fare clic su o toccare la scheda Origini dati e quindi fare clic su o toccare Aggiungi origine dati.

  2. Fare clic su o toccare Microsoft Translator.

Nell'app, nel punto in cui dovrebbe essere usato il testo "Hello" in precedenza, usare invece questa formula:

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

Il servizio Microsoft Translator usa gli stessi tag di lingua restituiti dalla funzione Language.

Questo approccio ha alcuni svantaggi rispetto all'esempio precedente che usa una tabella di stringhe di testo pre-tradotta:

  • La traduzione può impiegare del tempo, se è necessaria una chiamata a un servizio sulla rete. Ciò causerà un certo ritardo prima che venga visualizzato il testo tradotto nell'app.
  • La traduzione sarà meccanica e potrebbe non corrispondere alle aspettative o essere la scelta migliore per il contesto all'interno dell'app.