Peut-on utiliser "initRefSelect" en front

Bonjour,

Je souhaite mettre en place un filtre, de manière dynamique, sur une liste d’une instance Panel, en fonction d’un attribut dans le formulaire de l’objet parent.

C’est-à-dire, si je change la valeur de l’attribut, le nouveau filtre s’applique aussitôt au niveau de la liste panel, sans que j’aie besoin d’enregistrer l’objet parent.

Actuellement, j’utilise le hook « initRefSelect », mais il ne tient compte que des valeurs enregistrées de l’attribut, et non pas d’une nouvelle valeur saisie dans l’attribut (sans enregistrer le formulaire).

Je ne sais pas si le besoin est clair.

Est-ce qu’il y a un moyen d’avoir ce filtre « dynamique » ?

Merci d’avance

Abed.

Bonjour Abed,

Ce n’est pas un comportement prévu, il n’y a donc pas de hook front pour ce cas d’usage. Il faudrait donc a priori déclencher un rechargement de la liste fille sur un onChange de l’attribut en question. Tu peux ajouter ce comportement dans le hook front form.onload de l’objet parent.

(Ceci étant dit, il peut être intéressant de réfléchir une façon moins détournée de répondre à ton besoin.)

Cordialement,

Bonjour Simon,
Merci pour ton retour rapide.

Est-ce que tu aurais une idée de la syntaxe à utiliser pour un setSearchSpec en front pour faire ceci :

	if (parent.getName() == 'ImmoComparerInvestment') {
		var filtre = '';
		var regime = parent.getFieldValue("Simu_B1_REGIME_01");
		if (regime.substring(0,1) == 'P' ) { 
			filtre = filtre + " AND t.property_type ='40'";
		}
		...
		// On applique le filtre sur la liste des lignes à afficher 
		this.setSearchSpec("("+this.getDefaultSearchSpec()+ " AND " + ImmoTool.LinkedObjSelect(this,this.getGrant(),this.getName(),'E')+")"+filtre);				
	}  else {
		this.setSearchSpec("("+this.getDefaultSearchSpec()+ " AND " + ImmoTool.LinkedObjSelect(this,this.getGrant(),this.getName(),'E')+")");		
	}

Merci encore
Abed.

La searchSpec n’est pas dispo dans l’API front pour des raisons de sécurité, et doit être déconnectée de la saisie utilisateur.

Dans ton cas, j’ajouterais en front, un filtre sur l’attribut property_type avant de forcer le rechargement de la liste.

D’accord,
Est-ce que tu aurais stp un exemple du code à mettre pour ajouter un filtre sur une liste en front ?
Est-ce que cela aura un impact sur le comportement du SearchSpec de l’objet sur d’autre écrans ?

La méthode setFieldFilter n’existe pas en front, il faudra probablement setter un param, il faudrait que je teste pour te produire ça.

Bonjour Simon,

Est-ce que tu as pu trouver une solution à mon besoin stp ? à savoir, appliquer un filtre en front sur une liste (l’équivalent du initRefSelect et setSearchSpec)

Merci d’avance pour ton aide précieuse car je suis bloqué et je n’arrive pas à gérer ce cas.
Abed

Bonjour Abed,

Désolé que tu sois bloqué… Si j’avais à le faire, je m’appuierais sur :

Malheureusement je n’ai pas d’exemple sur étagère à ce jour, et la construction d’une solution sur mesure relève du support personnalisé, que nous fournissons volontiers via des tickets de support.

This topic was automatically closed 60 minutes after the last reply. New replies are no longer allowed.