Recherche globale sur objet Service

Request description

Bonjour,

J’ai un objet service LDAP mappé avec un objet User. Je souhaite qu’à la création d’un User, le champ qui affiche la loupe permette une recherche globale dans le LDAP, par UID mais aussi firstname et lastname.

J’ai essayé de créer un champ calculé mais la recherche sur l’objet service via ce champ ne fonctionne pas.

J’essaie donc de surcharger le preSearch pour transformer ma recherche

  • soit en transformant mon setFilter sur le UID en un setFilter de type OR (UID = toto OR firstname = toto …) mais je ne trouve pas comment faire des OR entre les filtres
  • soit en passant directement la syntaxe LDAP au service ({||(givename=toto,uid=toto …)} mais je ne trouve pas où je peux le faire

Pouvez-vous m’aider ?
Merci d’avance !

Emmanuelle

Steps to reproduce

This request concerns an up-to-date Simplicité instance
and these are the steps to reproduce it:

Technical information

Instance /health
---paste the content of your-instance.com/health---
Simplicité logs
---paste the content of the **relevant** server-side logs---
Browser logs
---paste content of the **relevant** browser-side logs---
Other relevant information

----E.g. type of deployment, browser vendor and version, etc.----

Bonjour,

Avez vous pu regarder ce ticket ?

Merci pour votre aide !
Emmanuelle

Je ne suis pas sûr de comprendre le besoin.

Je comprends qu’il y a un objet “User” service qui pointe sur le LDAP, celui-ci est sensé permettre les recherches sur les différents attributs (mais pas de “recherche globale” au sens de la recherche indexée)

Ce que je ne comprends pas c’est l’usage qui est fait de cet objet service vs l’objet User Simplicité…

J’ai un objet service LDAP.
Et un objet User custom mappé avec l’objet service.

Quand je crée un User, j’ai la loupe qui requête l’objet LDAP, mais uniquement sur l’UID.
Je voudrais pouvoir entrer sans distinction l’ID, le nom ou le prénom et que ça me propose des choix.

OK il s’agit d’un datamap.

Je vais vérifier mais je ne pense pas qu’il soit possible d’utiliser autre chose que l’attribut mappé pour faire une recherche de complétion sachant qu’un objet service LDAP (et plus généralement les objets services) n’est pas indexé au sens de la recherche indexée Simplicité

PS: Quand on clique sur la loupe, est-ce que ça ouvre bien une popup de recherche où il y a les autres critères de recherche ?

Oui dans la popup ouverte j’ai tous les champs. Le souci est au niveau de la saisie qui ne prend que l’UID.
J’ai tenté de regarder dans les hook de l’objet Service, si éventuellement il était possible de modifier les critères de recherche en syntax “ldap”, pour les remplacer par des “ou” mais je n’ai pas trouvé.
Autre piste, j’ai tenté de regarder au niveau du preSearch de l’objet service si je pouvais concaténer des Setfilter avec des OU pour remplacer login=pf* par login=pf* OU nom=pf* OU prenom=pf*, mais je n’ai pas trouvé non plus.

Réponse d’hier perdue (pb sur le forum)

Oui je l’ai dans mes mails

Blockquote
Sinon il faut ne pas mettre de complétion sur l’attribut mappé pour obliger à la sélection du mapping via la popup de recherche
Je vais quand même regarder s’il est possible de forcer des filtres en “OR” d’une manière ou d’une autre dans le preSearch mais je ne suis pas sûr que la mécanique des objets LDAP le permette en l’état.

Merci !
Je te teins au courant

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