Visiativ Process : Traduire les titres des sections de formulaires
1. Problématique
Lorsque vous concevez un processus dans le Studio Process, l’ensemble des éléments que vous créez (libellé des champs, des vues, des étapes, des actions etc…) est géré en multilingue. Avec la fonction d’export/import des traductions dans le Studio, vous pouvez ainsi rendre multilingue l’application que vous concevez.
Par défaut, dans les sous-formulaires de processus, il existe une section qui prend pour libellé le nom de l’étape courante, dans la langue de l’utilisateur connecté.
Il peut arriver que vous ayez besoin de créer des sections de formulaire supplémentaire afin d’organiser vos écrans les plus denses. Il faudra alors gérer la traduction des libellés des sections que vous avez créé de toute pièce.
Cet article vous explique comment traduire les libellés des sections, avec deux méthodologies distinctes.
2. Solution 1 : XML de traduction
Dans votre formulaire, créez une section, et éditez ses propriétés.
Pour le titre de la section, sélectionnez « Clé de traduction ».
Indiquez ensuite un nom de clé. Attention de bien respecter les deux prérequis suivants :
- Ce nom de clé doit être unique sur le serveur
- Le nom de la clé commence nécessairement par « LG_ »
Créez ensuite un fichier XML dans le répertoire C:VisiaitivProcesscustominternationalization.
- Adaptez le chemin C:VisiativProcess à votre environnement
- Si le sous-dossier internationalization n’existe pas, créez-le
Le fichier XML aura la structure suivante :
<res>
<id value=”LG_EXPENSES_LINES”>
<lang value=”fr” flag=”1″>Lignes de frais</lang>
<lang value=”en” flag=”1″>Expenses lines</lang>
</id>
</res>
Créez un nœud « id » par clé de traduction (un fichier XML peut contenir de multiples clés de traduction.
Pour chaque clé de traduction, créez un sous nœud « lang » pour chaque langue dans laquelle vous souhaitez traduire votre clé de traduction. L’attribut « value » contiendra alors le code langue pour laquelle vous éditez la traduction (vous pouvez vous référez à la documentation Administration Visiativ Process pour ajouter de nouvelles langues au produit).
Une fois que vous avez terminé d’éditer votre fichier, vous devez redémarrer votre serveur Visiativ Process afin de charger vos traductions. Pour ce faire, vous devez :
- Arrêter votre application Visiativ Process (en arrêtant le service Windows associé par exemple)
- Lancer le bat « applyconfig », situé par défaut dans C:VisiativProcess
- Redémarrer votre application Visiativ Process
Au redémarrage, vos traductions sont chargées dans la mémoire cache de l’application, et le titre de votre section apparaît bien traduit.
3. Solution 2 : Utilisation d’une liste de traductions
La seconde solution permet d’arriver au même résultat, mais sans devoir accéder au serveur pour y déposer un fichier XML, et sans devoir redémarrer l’application.
L’astuce consiste à créer une liste dans le Studio, à créer autant d’items dans cette liste que vous avez d’éléments à traduire, à traduire les éléments de cette liste n’utilisant les mécanismes standards d’export/import des traductions, puis à faire appel à ces traduction dans vos formulaires.
3.1Création d’une liste
Dans le Studio Process, au niveau de votre groupe de processus, créez une liste de valeurs statiques. Par convention, on la nommera systématiquement « translations ».
Créez ensuite autant d’items dans cette liste que vous avez d’éléments à traduire.
Pour rappel, les éléments d’une liste statique sont constitués :
-
D’une clé, à gauche du signe égal. Ce sera la valeur enregistrée en base de données. Cette clé doit être unique dans la liste.
-
D’un libellé. On indique ici directement le libellé dans la langue de l’utilisateur connecté.
3.2 Traduction des éléments de la liste
Pour traduire tous les éléments rajoutés précédemment à la liste, nous avons deux options :
- Soit faire un export complet des traductions depuis le groupe de processus. On retrouvera les traductions de nos éléments de la liste dans le fichier Excel généré. Il faudra alors remplir les traductions manquantes et réimporter l’ensemble des traductions. Pour vous y retrouver plus facilement, vous pouvez filtrer le contenu de la colonne A sur « List:translations:items»
- L’autre solution consiste simplement à changer de langue dans votre profil. Après le changement de langue, retournez dans le Studio, et rééditez votre liste de traductions dans la gestion des listes. Les libellés que vous renseignés seront enregistrés pour la langue courante de l’utilisateur connecté.
3.3 Utilisation des traductions de la liste dans les titres des sections
Sur votre formulaire de processus, éditez les propriétés de votre section. Dans la configuration du titre, choisissez « Clé de traduction ». Renseignez ensuite la clé de traduction en récupérant une des clés figurant en colonne A de l’export Excel des traductions.
Le titre de cotre section apparaît désormais traduit dans la langue de l’utilisateur connecté.
4. Conclusion
Les deux méthodes vous permettent de traduire le titre de vos sections dans vos formulaires, pour vos applications qui ont besoin de fonctionner dans un contexte multilingue.
La deuxième méthode offre toutefois quelques avantages par rapport à la première :
- Il n’est pas nécessaire d’accéder physiquement au serveur afin d’y déposer un fichier XML de traductions
- Il n’est pas nécessaire de devoir redémarrer l’application pour rechercher les traductions
Auteur de l’article
Thomas Paumier, Application Engineer chez Visiativ Switzerland