Ajouter Utilisateurs d’Office 365 à votre application

Effectué

La connexion Utilisateurs d’Office 365 pour Power Apps vous permet d’accéder aux profils utilisateur de votre organisation à l’aide de votre compte Office 365. Vous pouvez effectuer diverses actions, par exemple obtenir votre profil, le profil d’un utilisateur, le responsable d’un utilisateur ou des subordonnés directs.

Vous pouvez afficher ces informations au moyen de libellés dans votre application. Vous pouvez afficher une ou plusieurs fonctions, voire combiner différentes fonctions. Par exemple, cette fonction vous permet de rendre l’application plus personnelle en saluant l’utilisateur actif avec son nom d’affichage ou en renseignant automatiquement certains champs de données avec son nom et son numéro de téléphone.

Ajouter une connexion

La source de données Utilisateurs d’Office 365 est un connecteur standard utilisable dans Power Apps. Pour ajouter ce connecteur, cliquez sur Ajouter des données dans le ruban de commandes et saisissez ’Utilisateurs d’Office 365’ dans le champ de recherche. Sélectionnez Utilisateurs d’Office 365 dans la liste et, dans la boîte de dialogue qui s’affiche avec votre connexion, sélectionnez votre connexion Utilisateurs d’Office 365.

Capture d’écran de l’icône Données avec le bouton Ajouter des données et les résultats de la recherche du terme « Office ».

Capture d’écran de la fenêtre Ajouter des données avec l’option Utilisateurs d’Office 365 sélectionnée.

Une boîte de dialogue similaire à celle ci-dessous peut s’afficher s’il s’agit de la première fois que vous ajoutez ce connecteur dans cet environnement. Cliquez sur Connecter pour ajouter cette connexion.

Capture d’écran de la fenêtre Utilisateurs d’Office 365 avec le bouton Connecter.

Informations de profil utilisateur

Les informations de profil utilisateur sont appelées au moyen de l’action MyProfile du connecteur Utilisateurs d’Office 365. De même, nous pouvons obtenir des informations sur d’autres utilisateurs en appelant l’action SearchUser. Quelques options vous permettent d’obtenir des informations utilisateur dans l’application canevas. La fonction dans la propriété App OnStart ou OnSelect d’un bouton vous permet d’obtenir des informations sur l’utilisateur de l’application.

Stocker les informations du profil utilisateur avec App OnStart

Ici, nous allons obtenir l’enregistrement contenant les informations utilisateur que nous recherchons et l’enregistrer en tant que variable globale, afin de faciliter sa réutilisation sur l’ensemble de l’application. Puisqu’il s’agit d’un enregistrement d’informations, nous avons accès à toutes les informations présentes dans votre profil Office 365.

Sélectionnez Application, puis la propriété OnStart et ajoutez la formule suivante :

Set(varUserInfo, Office365Users.MyProfileV2())

Capture d’écran de la propriété OnStart avec la formule affichée.

Pour renseigner notre variable, cliquez sur les points de suspension en regard d’Application, puis sélectionnez Exécuter OnStart.

Capture d’écran de l’option Exécuter OnStart avec la formule affichée.

Une fois la variable d’enregistrement globale varUSerInfo renseignée, vous pouvez appeler ces informations sur l’ensemble de l’application. Par exemple, dans la propriété Default d’un contrôle Saisie de texte, vous pouvez ajouter varUserInfo.displayName.

Texte de remplacement

L’image ci-dessous illustre les attributs pouvant être renseignés automatiquement dans votre application, ce qui permet à l’utilisateur de gagner du temps en évitant de les saisir manuellement :

Capture d’écran des informations de profil utilisateur.

Les données recueillies à partir de l’action MyProfileV2 comprennent les informations suivantes du profil utilisateur Office 365 de l’utilisateur : id, displayName, givenName, surname, mail, mailNickname, accountEnabled, userPrincipalName, department, jobTitle, mobilePhone, businessPhones, city, companyName, country, officeLocation et postalCode.

Propriété OnSelect d’un contrôle

Pour recueillir des données sur un autre utilisateur (quelqu’un d’autre que l’utilisateur actif), vous devez utiliser l’action SearchUser. Exerçons-nous en ajoutant un contrôle Zone de liste déroulante sous le champ de saisie de texte « Adresse postale ».

Définissez les propriétés de votre contrôle Zone de liste déroulante comme suit :

Propriété Valeur
DefaultSelectedItems Office365Users.SearchUser({searchTerm:varUserInfo.displayName})
DisplayFields ["DisplayName"]
IsSearchable true
Items Office365Users.SearchUser()
SelectMultiple false
OnChange Set(varSearchUserInfo, Office365Users.UserProfile(Self.Selected.Id))

L’action SearchUser recueille des données similaires à l’action MyProfile, mais légèrement différentes. L’action SearchUser (par défaut) renvoie les informations suivantes sur l’utilisateur :

  • City
  • CompanyName
  • Country
  • Department
  • DisplayName
  • GivenName
  • ID
  • JobTitle
  • Mail
  • MailNickname
  • mobilePhone
  • OfficeLocation
  • PostalCode
  • Surname
  • TelephoneNumber
  • UserPrincipalName
  • AccountEnabled
  • BusinessPhones

Remarque

Vous ne pourrez voir les données que si elles ont été saisies pour ce collaborateur. Par exemple, s’il n’y a pas d’entrée de téléphone portable pour l’enregistrement de cette personne, cette action ne renverra aucune donnée.

Ensuite, copiez les contrôles que vous avez créés pour l’action MyProfile et collez-les sous la zone du contrôle Zone de liste déroulante. Définissez les libellés et Valeurs par défaut des champs de saisie de texte collés comme suit :

Libellé Valeur par défaut du champ de saisie de texte
Nom complet (Nom d’affichage) varSearchUserInfo.DisplayName
Poste varSearchUserInfo.JobTitle
Département varSearchUserInfo.Department
Adresse e-mail varSearchUserInfo.Mail
Ville varSearchUserInfo.City
Pays varSearchUserInfo.Country
Code postal varSearchUserInfo.PostalCode

Notez que nous n’avons pas d’« Adresse postale » ou d’« État » disponible dans les données SearchUser. Notez également que les champs de données commencent tous par une lettre majuscule avec des données SearchUser (au lieu d’une lettre minuscule).

Maintenez la touche Alt enfoncée et sélectionnez votre contrôle Zone de liste déroulante, puis notez qu’il affiche les Noms d’affichage des utilisateurs disponibles ainsi qu’un champ de recherche. Sélectionnez un utilisateur et assurez-vous que les champs de saisie de texte ci-dessous sont renseignés. Les vôtres devraient ressembler à ceci :

Capture d’écran de la zone de recherche.

Capture d’écran des résultats de la recherche de l’utilisateur.

Vous pouvez mettre votre application en mode « Lecture » et essayer de rechercher différents utilisateurs. Maintenant que vous avez découvert comment obtenir des informations pour d’autres utilisateurs, examinons d’autres données d’action disponibles avec le connecteur Utilisateurs d’Office 365.

Informations sur le responsable

Outre l’obtention d’informations utilisateur, vous pouvez obtenir des informations sur le Responsable d’un utilisateur.

Avec le contrôle Zone de liste déroulante que vous avez créé, définissez la propriété OnChange sur : Set(varSearchUserInfo, Office365Users.Manager(ComboBox1.Selected.Id)).

Capture d’écran des informations sur le responsable.

Remarque

Si vous sélectionnez un utilisateur qui n’a pas de responsable, vos champs de saisie de texte peuvent afficher des erreurs lorsque votre application est en mode d’édition. En effet, Power Apps renvoie des données d’Erreur indiquant qu’aucun responsable n’existe pour cet utilisateur. Ensuite, ces informations vous permettent de présenter des notifications à vos utilisateurs telles que la suivante : « Cette personne n’a pas de responsable. » La fonction Erreurs renvoie des informations sur votre erreur, sans perturber l’expérience utilisateur.

Vous pouvez vérifier qu’il s’agit du responsable adéquat dans le Centre d’administration Microsoft 365 sous Utilisateurs actifs. La sélection du Nom d’affichage de l’utilisateur entraîne l’ouverture d’un volet sur le côté droit de l’écran où vous pouvez afficher ces informations.

Capture d’écran des informations sur le responsable dans Microsoft Entra ID.

Afficher tous les subordonnés directs

Outre la recherche d’informations sur le Responsable, votre connecteur Utilisateurs d’Office 365 vous permet de rechercher tous les subordonnés directs d’un seul responsable.

Nous allons présenter une liste de Subordonnés directs en combinant une Collection et un contrôle Galerie. Une Collection est une variable de données qui peut stocker une liste de données (ou une table) utilisable sur l’ensemble de votre application. Un contrôle Galerie affiche une table d’enregistrements et chaque enregistrement peut contenir plusieurs types de données. Dans ce scénario, nous allons établir une Collection comme notre source de données. Commencez par créer un écran.

Ajoutez un contrôle Zone de liste déroulante, puis définissez la propriété Items sur Office365Users.SearchUser(). Ensuite, définissez la propriété SelectMultiple sur false, la propriété DisplayFields sur ["DisplayName"] et la propriété OnChange sur ClearCollect(colDirectReports, Office365Users.DirectReportsV2(Self.Selected.Id).value).

Présentons maintenant deux informations : le nombre de subordonnés directs d’un responsable et une liste de leurs noms.

Pour obtenir leur nombre, ajoutez un contrôle Libellé, puis définissez sa propriété Text sur CountRows(colDirectReports). Cette formule compte le nombre de lignes dans notre collection de rapports directs pour la personne sélectionnée. Si vous voyez un zéro, alors cette personne n’a pas de subordonnés directs.

Capture d’écran d’un contrôle Libellé avec sa propriété Text définie.

Pour afficher d’autres informations, une liste des subordonnés directs, insérez un contrôle Galerie verticale, puis définissez la source de données (ou la propriété Items) sur colDirectReports. Définissez la propriété Layout sur Titre et la propriété Fields (ou la propriété Text du libellé Titre dans votre galerie) pour afficher displayName. Ensuite, votre écran devrait ressembler à ceci :

Capture d’écran de l’option Vertical gallery du menu Insérer avec sa propriété Items définie.

Nous avons maintenant découvert comment appeler des données d’action au moyen de la connexion Utilisateurs d’Office 365. Ces données nous ont permis de renseigner des champs de saisie de texte et une autre forme de données nommée Collection et d’afficher ces informations dans une Galerie. Dans l’unité suivante, étudions plus en détail comment afficher et interagir avec des données dans une galerie.

Pour en savoir plus sur la connexion Utilisateurs d’Office 365, consultez Référence sur le connecteur Utilisateurs d’Office 365.