Filedcompletion

Bonjour,

je recontre des problèmes avec un attribut en auto-complétion :

  • la recherche ne prends en compte que les 2 premiers caractères
  • quand j’efface ma saisie et que j’en fait une autre, les données de la 1ere recherche sont toujours affichés. les données de la 2ème recherche sembles être en dessous. cf copie d’écran

Non reproduit, y a-t-il des log dans la console du navigateur Chrome F12/console ?
https://www.useloom.com/share/73126a941c5546cdaeef63646bc8fdce

Visiblement les évenements keyup ou blur ne passent pas bien.

Est ce général pour tous les champs ou juste sur ce champ ?
Essayez avec le champ “code” des paramètres systèmes.

pas de log dans la console

le champ code des paramètres système fonctionne bien.

la différence est que je veux que la liste soit alimentée par les données d’un ws. du coup, je code le hook fieldCompletion

Peut-on le voir ?

  • il faut y mettre des console.log pour s’assurer que la liste vue du serveur correspond bien aux critères de recherche reçu
  • et toujours retourner un tableau avec les résultats ou null pour faire un recherche en base locale

exemple :

MyObject.fieldCompletion = function(field,query,context) {

	if (field=="myField") {
		console.log("query= "+query);

		//  External call
		var result = eval(Tool.readURL("a REST service returning json array with param=" + query));
		//  Build the result
		var list = new ArrayList(); // must be a Java array (not a javascript array)
		for (var i=0; result && i<result.length; i++) {
			console.log("result"+i+" = "+result[i]);
			list.add(result[i]);
		}
		return list;
	}
	return null; // displays the default local search
};

c’est exactement ce que j’ai fait

Ajout d’un timer pour éviter les appels en // qui provoquent un pb de fermeture aléatoire.
Ce sera livré à la prochaine release de fin de semaine.