Problème traduction fr sur le task planning board (Agile)

valerie_gallot
Giga Expert

Bonjour,

Est-ce que certains d'entre vous utilisent le module Agile ?

Avez-vous rencontré le problème qui existe sur le task planning board ?

Le champ "Test Result" des Scrum Tasks affiche 3 fois la même valeur (Réussite, Réussite, Réussite) quand on l'utilise depuis le task planning board...

Par contre ça marche bien en anglais...

Toute idée de contournement est la bienvenue.

(évidemment, j'ai vérifié dnas le dictionnaire, c'est ok, et depuis le form, ça marche bien aussi)

1 ACCEPTED SOLUTION

s_lefebvre
Kilo Expert

Bonjour à tous,

 

Après moultes recherches et débogages (merci hichem pour avoir fait le début du debug!), il y a bien un script include qui génère ces choix et que nous pouvons modifier pour corriger cette anomalie.

 

Le script include en question est ScrumAjaxChoiceDetailsProvider. La fonction getChoiceData va récupérer les choix en anglais et si la langue est différente de l'anglais, alors il va récupérer le libellé dans l'autre langue.

L'anomalie vient du fait qu'il ne récupère pas le libellé en fonction de la valeur déjà trouvée, ce qui fait qu'il va toujours récupérer le premier libellé trouvé.

Pour corriger cette anomalie, il suffit de rajouter cette ligne avant le lancement de la query en ligne 24 : 

gr3.addQuery("value", value);

Lien : https://{votre_instance}.service-now.com/nav_to.do?uri=sys_script_include.do?sys_id=f9d5f70eff311000dadaefff0efe1e3b

 

 

En Kingston, le script a été remanié et utilise l'objet "GlideSysChoice".

var ScrumAjaxChoiceDetailsProvider = Class.create();
ScrumAjaxChoiceDetailsProvider.prototype = Object.extendsObject(AbstractAjaxProcessor, {
   getChoiceData: function() {
      var userLanguage = this.getParameter('sysparm_user_language');
      var name = this.getParameter('sysparm_table');
      var element = this.getParameter('sysparm_column');
      var result = "";

      //Get the sys_choice entries
	  var choices = new GlideSysChoice(name, element);
	  var gr = choices.getChoices();
      while (gr.next()){
         var label = gr["label"];
         var value = gr["value"];
         var item = this.newItem("choice");
         item.setAttribute('label', label);
         item.setAttribute('value', value);
      }
   },
	
	/**
	 * Prevent public access to this processor
	 */
	isPublic: function() {
		return false;
	}
});

View solution in original post

15 REPLIES 15

Top !  🙂