Utilisateur Office 365 et zone de liste déroulante

  • Utilisateur Office 365 et zone de liste déroulante

    Posté par Sylvain sur 26 janvier 2023 à 21h43

    Hello tout le monde,

    je galère avec ma zone de liste déroulante et le choix d’un utilisateur.

    J’ai bien mis dans la propriété Items de mon composant :

    'Utilisateurd'Office365'.searchUser()

    avec DispayField : [“DisplayName”] et SearchField : [“DisplayName”]

    J’ai activer l’autorisation de recherche.

    J’ai deux problèmes.

    1. Je n’arrive pas à avoir tout le monde. seul les XX premiers utilisateurs sont visibles et peuvent faire l’objet de la recherche. (je marque XX car je n’ai pas compté…)

    2. j’aimerai que l’utilisateur connecté soit sélectionné par défaut. J’ai mi dans la propriété Default de ma liste :

      'Utilisateursd’Office365'.MyProfileV2().displayName

    mais bien sur, ça ne fonctionne pas car il faut mettre une valeur Record…

    j’ai même essayé ça :

    'Utilisateursd’Office365'.SearchUserV2({searchTerm:'Utilisateursd’Office365'.MyProfileV2().displayName})

    Merci d’avance pour votre aide.

    PostID=nD5MWLueKTOjJ4N

    Sylvain a répondu Il y a 7 mois, 3 semaines 1 Membre · 5 Réponses
  • 5 Réponses
  • Sylvain

    Membre
    26 janvier 2023 à 23h39

    Bon ben en fait, j’ai trouvé 😄

    Il faut remplir la propriété DefaultSelectedItem, pas Default

    Et vu que ça demande un Record le code, est :

    {n    DisplayName:'Utilisateursd’Office365'.MyProfileV2().displayNamen}

    Il me reste le souci de la recherche sur l’entièreté des utilisateurs, pas sur les XX premiers.

    CommentID=aZBzyp9sm1M1d5o, PostID=nD5MWLueKTOjJ4N

  • DavidZed

    Membre
    27 janvier 2023 à 9h03

    Le connecteur est limité en nombre de résultats :

    1a : si tu as moins de 999 personnes dans l’org, tu peux mettre en Items : Office365Users.SearchUser({top:999})

    2a : si tu as plus de 1000, il faut utiliser un textinput en guise de champ de recherche et désactiver la recherche dans le combobox

    2: tu peux mettre tout simplement : Office365Users.MyProfile() dans DefaultSelectedItems

    CommentID=rK62axkxh7JWCPf, PostID=nD5MWLueKTOjJ4N

  • Sylvain

    Membre
    29 janvier 2023 à 21h16

    Super ton conseil, merci beaucoup.

    Autre question plus ou moins liée, est-il possible de faire de la saisie automatique sur une entrée de texte ?

    un petit peu comme dans OutLook, quand tu commence à taper l’adresse du destinataire, ça te propose toutes les adresses liées à ce que tu as commencé d’écrire.

    Merci d’avance.

    CommentID=ZIMI6usZnGHNycE, PostID=nD5MWLueKTOjJ4N

  • DavidZed

    Membre
    30 janvier 2023 à 8h04

    Le moyen de s’en rapprocher le plus serait de mettre le ‘Utilisateursd’Office365’.SearchUserV2() dans une une list box

    Le contenu va s’actualiser en fonction des caractères saisis dans textinput

    et ensuite à l’aide d’une variable, gérer la visibilité :

    • true dans le onselect le textinput

    • false dans le onselect du listbox

    Sinon pour me simplifier la vie, il m’arrive d’utiliser une colonne ‘personne’ de liste Sharepoint pour faire mes people pickers : Dans un ComboBox, tu mets en items :

    Choices([@’Nom de la source SP’].LogicalNameDeLaColonnePerson)

    Et tu auras un people picker simple et efficace, ensuite tu utilises ‘Utilisateursd’Office365’.SearchUserV2() uniquement pour récupérer des infos supplémentaires sur le profil de l’utilisateur via son UPN

    CommentID=riTSBoIfwmMkiNT, PostID=nD5MWLueKTOjJ4N

  • Sylvain

    Membre
    30 janvier 2023 à 21h43

    ok merci je vais regarder ça.

    CommentID=lTKNjV6W6bLDLqq, PostID=nD5MWLueKTOjJ4N

Connectez-vous pour répondre.