Claude Couderc Consulting

Créer une application multilingue PowerApps

Le besoin d’une application multilingue PowerApps apparaît dans les organisations internationales. L’idée est d’avoir une seule application PowerApps qui peut s’afficher dans la langue de l’utilisateur.

Identifier les textes fixes

Dans votre application, recherchez tous les contenus textuels, comme les messages, infobulles, etc.

Dans ce scénario, le formulaire est constitué de deux contrôles. Un contrôle de type étiquette et un contrôle de type entrée de texte. Ces contrôles servent à saisir la ville du demandeur.

Le formulaire doit fonctionner en français, anglais et allemand. Il doit aussi prévoir le cas où la langue n’est ni le français, l’anglais et l’allemand. La langue initiale du formulaire est l’anglais.

Pour vous aider, regardez la copie d’écran ci-dessous.

Formulaire PowerApps multilingue
Formulaire PowerApps multilingue

Créer une table de correspondance

En fonction du code langue qui sera récupérée (voir plus bas), cette table indique le terme correspondant à la langue pour chaque chaîne de caractères. Pour vous aider, regardez la copie d’écran ci-dessous.

TermeLangueTraduction
City frVille
City enCity
City deStadt
CityCity

Vous remarquerez la présence d’une ligne avec une valeur vide pour le code langue. Cette ligne sert comme valeur par défaut, si aucun code langue ne peut être récupéré ou si le code langue récupéré n’a pas de valeur définie pour la variable.

Concrètement, cette liste est définie dans un fichier Microsoft Excel sous forme d’un tableau. Pour vous aider, regardez la copie d’écran ci-dessous.

Fichier Microsoft Excel sous forme d'un tableau
Fichier Microsoft Excel sous forme d’un tableau

Il est conseillé de donner un nom significatif à votre tableau. Par défaut, celui-ci s’appelle Tableau1. Dans ce scénario, le tableau se nomme dictionary. Pour vous aider, regardez la copie d’écran ci-dessous.

Nommer un tableau Excel
Nommer un tableau Excel

Ce fichier est ensuite importé dans l’application PowerApps sous forme de données statiques. Pour vous aider, regardez la copie d’écran ci-dessous.

Importer à partir d'Excel dans PowerApps
Importer à partir d’Excel

Ensuite, il suffit de cliquer sur Importer à partir d’Excel, de sélectionner le fichier Excel. Lors de l’import, vous devrez indiquer quel tableau est concerné dans le volet de droite.

Récupérer la langue de l’utilisateur

La fonction Language() permet de récupérer la langue de l’utilisateur. Pour plus d’informations, consultez l’aide Microsoft de la fonction Language(). Cet article s’est d’ailleurs inspiré de cette page d’aide.

Dans votre application, définissez la propriété Text du champ texte City avec la formule suivante :

LookUp( dictionary; Terme = "City" && (Langue = Left( Language(); 2 )  || IsBlank( Langue ))).Traduction

A l’intérieur de cette formule, la fonction Language() récupère le code langue sous la forme fr-FR. La fonction Left() extrait les deux premiers caractères du code langue, soit fr.

La fonction LookUp() lit les données de la source de données dictionnary. Les données sont filtrées pour le terme City et pour le code langue calculé précédemment. Si le code langue est vide, la traduction de la ligne sans code langue est récupérée. Pour vous aider, regardez la copie d’écran ci-dessous.

Récupération du code langue
Récupération du code langue

Dans ce scénario, la langue de l’utilisateur est bien le français.

Vous noterez que l’affichage de la traduction doit tenir compte de la longueur de la traduction.

Article mis à jour le 4 septembre 2019.

Office365 Addict

Ajouter un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.