Fonctions utilisateur

Cet article présente les fonctions utilisateur et leurs utilisations dans Tableau. Il montre également comment créer un calcul utilisateur en se basant sur un exemple.

Pourquoi utiliser des fonctions utilisateur

Les fonctions utilisateur peuvent servir à créer des filtres utilisateur ou des filtres de sécurité au niveau des lignes. Ces filtres affectent les visualisations publiées sur Tableau Server ou Tableau Cloud de sorte que seules certaines personnes puissent voir votre visualisation.

Imaginons par exemple une visualisation qui montre les performances de vente pour chaque employé de votre service publiées sur Tableau Server ou Tableau Cloud. Vous souhaiterez peut-être que les employés puissent uniquement voir leurs propres chiffres de vente lorsqu’ils accèdent à cette visualisation.

Dans ce cas, vous pouvez utiliser la fonction ISMEMBEROF pour créer un champ qui renvoie la valeur True si le nom d’utilisateur de la personne connectée au serveur appartient à un groupe spécifié (sur le serveur), par exemple le groupe « Managers ». Ensuite, lorsque vous filtrez la vue à l’aide de ce champ calculé, seule une personne faisant partie de ce groupe peut voir les données.

Le calcul dans ce cas peut se présenter ainsi :

ISMEMBEROF('Managers')

Remarque : si les noms de vos groupes ou de vos utilisateurs contiennent des caractères non alphanumériques, vous devez utiliser l’encodage d’URL HTML pour les caractères spéciaux lorsque vous utilisez les fonctions ci-dessous.

Certains caractères spéciaux sont autorisés sans encodage d’URL HTML, tels que les soulignements, les parenthèses et les points d’exclamation. _ ( ) ! De nombreux autres caractères doivent être codés.

Par exemple, la fonction ISMEMBEROF("USERS+") doit être écrite en tant que ISMEMBEROF("USERS%2B"), parce que « %2B » est l’encodage d’URL HTML pour le symbole « + ». Pour des informations sur l’encodage d’URL HTML, consultez Référence de l’encodage d’URL HTML(Le lien s’ouvre dans une nouvelle fenêtre) sur le site Web des développeurs Web W3schools.

Pour intégrer des flux de travail dans Tableau Cloud uniquement

Parmi les fonctions utilisateur, un sous-ensemble de fonctions d’attribut utilisateur peut être utilisé avec les Applications connectées Tableau(Le lien s’ouvre dans une nouvelle fenêtre). Les fonctions d’attributs utilisateur (USERATTRIBUTE et USERATTRIBUTEINCLUDES) permettent à Tableau de saisir les attributs de l’utilisateur au moment de l’exécution dans le cadre du processus d’authentification. Lorsque les attributs utilisateur sont transmis à partir des jetons Web JSON (JWT), le contenu intégré créé avec ces fonctions peut contrôler et personnaliser les données affichées aux utilisateurs.

Remarques :

  • Consultez l’aide de l’API d’intégration v3(Le lien s’ouvre dans une nouvelle fenêtre) pour les problèmes connus susceptibles d’affecter votre flux de travail.

  • les fonctions d’attribut utilisateur peuvent être incluses dans le contenu créé dans Tableau Desktop ou Tableau Cloud.

  • il est impossible de prévisualiser du contenu avec ces fonctions lors de la création dans Tableau Desktop ou Tableau Cloud. Les fonctions d’attribut utilisateur renvoient des valeurs NULL ou FALSE. Pour vous assurer que les fonctions d’attribut utilisateur fonctionnent comme prévu, nous vous recommandons de revoir le contenu après l’avoir intégré dans votre application externe. Pour en savoir plus sur l’intégration de flux de travail comprenant ces fonctions utilisateur, consultez l’Aide sur L’API d’intégration v3(Le lien s’ouvre dans une nouvelle fenêtre).

  • Les fonctions d’attribut utilisateur ne peuvent pas être utilisées dans des flux de travail sans intégration ou avec des protocoles OIDC ou SAML.

Fonctions utilisateur disponibles dans Tableau

FULLNAME( )

SyntaxeFULLNAME( )
RésultatChaîne
Définition

Renvoie le nom complet de l’utilisateur actuel.

Exemple
FULLNAME( )

Renvoie le nom complet de l’utilisateur connecté, par exemple, « Hamlin Myrer ».

[Manager] = FULLNAME( )

Si le responsable « Hamlin Myrer » est connecté, cet exemple ne renvoie la valeur TRUE qu’en présence de la valeur « Hamlin Myrer » dans le champ Manager de la vue.

Remarques

Cette fonction recherche :

  • Tableau Cloud et Tableau Server : le nom complet de l’utilisateur connecté
  • Tableau Desktop : le nom complet local ou réseau de l’utilisateur

Filtres utilisateur

Lorsqu’il est utilisé comme filtre, un champ calculé [Username field] = FULLNAME( ) peut être utilisé pour créer un filtre utilisateur qui n’affiche que les données correspondant à la personne connectée au serveur.

ISFULLNAME

SyntaxeISFULLNAME("User Full Name")
RésultatBooléen
Définition

Renvoie la valeur TRUE si le nom complet de l’utilisateur actuel correspond au nom complet spécifié; la valeur FALSE est renvoyée si ce n’est pas le cas.

Exemple
ISFULLNAME("Hamlin Myrer")
Remarques

L’argument <"User Full Name"> doit être une chaîne littérale, et non un champ.

Cette fonction recherche :

  • Tableau Cloud et Tableau Server : le nom complet de l’utilisateur connecté
  • Tableau Desktop : le nom complet local ou réseau de l’utilisateur

ISMEMBEROF

SyntaxeISMEMBEROF("Group Name")
RésultatBooléen ou valeur nulle
Définition

Renvoie TRUE si la personne qui utilise Tableau est membre d’un groupe qui correspond à la chaîne donnée, FALSE si elle n’est pas membre, et NULL si elle n’est pas connectée.

Exemple
ISMEMBEROF('Superstars')
ISMEMBEROF('domain.lan\Sales')
Remarques

L’argument <"Group Full Name"> doit être une chaîne littérale, et non un champ.

Si l’utilisateur est connecté à Tableau Cloud ou Tableau Server, l’appartenance à un groupe est déterminée par les groupes Tableau. La fonction renverra TRUE si la chaîne donnée est « Tous les utilisateurs »

La fonction ISMEMBEROF( ) accepte également les domaines Active Directory. Le domaine Active Directory doit être déclaré dans le calcul avec le nom du groupe.

Si l’appartenance d’un utilisateur à un groupe est modifiée, la modification des données basées sur l’appartenance au groupe est incluse dans un classeur ou une vue lors d’une nouvelle session. Les données obsolètes apparaîtront dans la session existante.

ISUSERNAME

SyntaxeISUSERNAME("username")
RésultatBooléen
DéfinitionRenvoie la valeur TRUE si le nom d’utilisateur de l’utilisateur actuel correspond au nom d’utilisateur spécifié ou la valeur FALSE est renvoyée si ce n’est pas le cas.
Exemple
ISUSERNAME("hmyrer")
Remarques

L’argument <"username"> doit être une chaîne littérale, et non un champ.

Cette fonction recherche :

  • Tableau Cloud et Tableau Server : le nom d’utilisateur de l’utilisateur connecté
  • Tableau Desktop : le nom d’utilisateur local ou réseau de l’utilisateur

USERDOMAIN( )

SyntaxeUSERDOMAIN( )
RésultatChaîne
DéfinitionRenvoie le domaine de l’utilisateur actuel.
Remarques

Cette fonction recherche :

  • Tableau Cloud et Tableau Server : le domaine utilisateur de l’utilisateur connecté
  • Tableau Desktop : le domaine local si l’utilisateur se trouve sur un domaine

USERNAME( )

SyntaxeUSERNAME( )
RésultatChaîne
DéfinitionRenvoie le nom d’utilisateur de l’utilisateur actuel.
Exemple
USERNAME( )

Renvoie le nom d’utilisateur de l’utilisateur connecté, par exemple, « hmyrer ».

[Manager] = USERNAME( )

Si le responsable « hmyrer » est connecté, cet exemple ne renvoie la valeur TRUE qu’en présence de la valeur « hmyrer » dans le champ Manager de la vue « hmyrer ».

Remarques

Cette fonction recherche :

  • Tableau Cloud et Tableau Server : le nom d’utilisateur de l’utilisateur connecté
  • Tableau Desktop : le nom d’utilisateur local ou réseau de l’utilisateur

Filtres utilisateur

Lorsqu’il est utilisé comme filtre, un champ calculé [Username field] = USERNAME( ) peut être utilisé pour créer un filtre utilisateur qui n’affiche que les données correspondant à la personne connectée au serveur.

USERATTRIBUTE

Remarque : Avant d’utiliser cette fonction, consultez Pour intégrer des flux de travail dans Tableau Cloud uniquement. Pour plus d’informations, consultez Authentification et vues intégrées.(Le lien s’ouvre dans une nouvelle fenêtre) dans l’API d’intégration v3.

SyntaxeUSERATTRIBUTE('attribute_name')
RésultatChaîne ou valeur nulle
Définition

Si <'attribute_name'> fait partie du jeton Web JSON (JWT) transmis à Tableau, le calcul renvoie la première valeur de <'attribute_name'>.

Renvoie une valeur nulle si <'attribute_name'> n’existe pas.

Exemple

Supposons que « Zone géographique » soit l’attribut utilisateur inclus dans le JWT et transmis à Tableau (à l’aide de l’application connectée déjà configurée par l’administrateur de votre site).

En tant qu’auteur du classeur, vous pouvez configurer votre visualisation de manière à filtrer les données en fonction d’une zone géographique spécifique. Dans ce filtre, vous pouvez faire référence au calcul suivant.

[Region] = USERATTRIBUTE("Region")

Lorsque User2 de la zone géographique Ouest visualise la visualisation intégrée, Tableau affiche les données appropriées pour la zone géographique Ouest uniquement.

RemarquesVous pouvez utiliser la fonction USERATTRIBUTEINCLUDES si vous vous attendez à ce que <'attribute_name'> renvoie plusieurs valeurs.

USERATTRIBUTEINCLUDES

Remarque : Avant d’utiliser cette fonction, consultez Pour intégrer des flux de travail dans Tableau Cloud uniquement. Pour plus d’informations, consultez Authentification et vues intégrées.(Le lien s’ouvre dans une nouvelle fenêtre) dans l’API d’intégration v3.

SyntaxeUSERATTRIBUTEINCLUDES('attribute_name', 'expected_value')
RésultatBooléen
Définition

Renvoie la valeur TRUE si les deux énoncés suivants sont vrais :

  • <'attribute_name'> fait partie du jeton Web JSON (JWT) transmis à Tableau
  • un des valeurs de <'attribute_name'> correspond à la <'expected_value'>.

Dans le cas contraire, renvoie la valeur FALSE.

Exemple

Supposons que « Zone géographique » soit l’attribut utilisateur inclus dans le JWT et transmis à Tableau (à l’aide de l’application connectée déjà configurée par l’administrateur de votre site).

En tant qu’auteur du classeur, vous pouvez configurer votre visualisation de manière à filtrer les données en fonction d’une zone géographique spécifique. Dans ce filtre, vous pouvez faire référence au calcul suivant.

USERATTRIBUTEINCLUDES('Region', [Region])

Si User2 de la zone géographique Ouest accède à la visualisation intégrée, Tableau vérifie si l’attribut utilisateur Zone géographique correspond à l’une des valeurs du champ [Zone géographique]. Lorsque la valeur est true, la visualisation affiche les données concernées.

Lorsque User3, de la zone géographique Nord, accède à la même visualisation, il ne peut voir aucune donnée, car il n’y a pas de correspondance avec les valeurs du champ [Zone géographique].

Créer un calcul utilisateur

Les calculs utilisateur fonctionnent directement avec les utilisateurs et les groupes que vous avez configurés sur Tableau Server ou Tableau Cloud. Vous pouvez créer des calculs utilisateur à utiliser comme filtres de manière à ce que les utilisateurs puissent uniquement voir les données pertinentes pour eux.

Par exemple, imaginons une visualisation de carte de ce type, qui affiche les données de vente pour 48 États américains. Vous pouvez créer un calcul utilisateur de manière à afficher uniquement les parties de la carte qui sont pertinentes pour chaque utilisateur, par exemple les données pertinentes pour un responsable régional par rapport à un responsable national. (Un responsable national devrait être capable de voir les données pour tout le pays, tandis qu’un responsable régional devrait uniquement accéder aux données pour la région qu’il gère).

Lorsqu’il est connecté, le responsable national voit la visualisation suivante :

Lorsqu’il est connecté, le responsable de la région Ouest voit uniquement les ventes pour sa région :

Pour créer une fonction utilisateur qui fonctionne comme dans cet exemple, procédez comme suit.

Avant de commencer

Pour suivre les étapes de cet exemple, vous devez avoir accès à Tableau Server ou Tableau Cloud. Vous devez également être un administrateur de serveur ou de site.

Étape 1 : Créer les utilisateurs et les groupes

  1. Connexion à Tableau Server ou Tableau Cloud.

  2. Dans Tableau Server ou Tableau Cloud, ajoutez les utilisateurs suivants :

    • Sadie Pawthorne

    • Chuck Magee

    • Fred Suzuki

    • Roxanne Rodriguez

    Pour plus d’informations, consultez Ajouter des utilisateurs à un site(Le lien s’ouvre dans une nouvelle fenêtre) dans l’aide de Tableau Server.

  3. Créez un nouveau groupe appelé National Managers (Responsables nationaux).

    Pour plus d’informations, consultez Créer un groupe local(Le lien s’ouvre dans une nouvelle fenêtre) dans l’aide de Tableau Server.

  4. Ajoutez-vous au groupe Responsables nationaux.

    Pour plus d’informations, consultez Ajouter des utilisateurs à un groupe(Le lien s’ouvre dans une nouvelle fenêtre) dans l’aide de Tableau Server.

Étape 2 : Créer la visualisation

  1. Ouvrez Tableau Desktop et connectez-vous à la source de données Sample - Superstore qui est fournie avec Tableau.

  2. Dans l’angle inférieur gauche de l’espace de travail, cliquez sur l’onglet Source de données.

  3. Dans la page Source de données, depuis le volet Connexions à gauche, faites glisser la feuille People sur l’espace de travail.

  4. Cliquez sur l’icône de jointure et sélectionnez Gauche.

  5. Accédez à une nouvelle feuille de calcul.

  6. Dans le volet Données, sous Dimensions, double-cliquez sur State (État).

    Une vue de carte est créée.

  7. Depuis le volet Données, sous Mesures, faites glisser Sales (Ventes) vers Couleur sur la fiche Repères.

  8. Dans l’étagère Colonnes, sélectionnez le champ Longitude et maintenez enfoncée la touche Ctrl (Command sur Mac) sur votre clavier pour le copier. Faites glisser la copie à droite de l’original dans l’étagère Colonnes.

  9. Sur la fiche Repères, cliquez sur le second onglet (en bas) Longitude.

  10. Depuis le volet Données, faites glisser Region (Région) vers Couleur sur la fiche Repères.

    La vue de carte à droite est mise à jour avec les nouvelles couleurs.

  11. Sur la fiche Repères, cliquez sur le menu déroulant Type de repère et sélectionnez Carte.

  12. Sur la fiche Repères, cliquez sur Couleur, et, sous Opacité, ajustez le curseur sur 50%.

  13. Sur la fiche Repères, cliquez sur le premier onglet Longitude.

  14. Sur la fiche Repères, cliquez sur Couleur > Modifier les couleurs, puis sélectionnez Gris dans la liste déroulante de la palette de couleurs.

    La vue de carte à gauche se met à jour.

  15. Dans l’étagère Colonnes, faites un clic droit sur le champ Longitude à droite et sélectionnez Axe double.

La carte se présente ainsi :

Étape 3 : Créer le calcul utilisateur

  1. Sélectionnez Analyse > Créer un champ calculé.

  2. Dans l’éditeur de calcul qui s’ouvre, procédez comme suit :

    • Nommez le champ calculé Filtre utilisateur.

    • Entrez la formule suivante :

      [Regional Manager] = USERNAME() OR ISMEMBEROF("National Managers")

      Ce calcul vérifie si une personne est incluse dans le champ Region (People), ou si elle fait partie du groupe National Managers. Si tel est le cas, la valeur True est renvoyée.

    • Lorsque vous avez terminé, cliquez sur OK.

    Le nouveau calcul utilisateur apparaît sous Dimensions, dans le volet Données. Comme vos autres champs, vous pouvez l’utiliser dans une ou plusieurs visualisations.

Étape 4 : Ajouter le calcul utilisateur à l’étagère Filtres

  1. Depuis le volet Données, sous Dimensions, faites glisser Filtre utilisateur vers l’étagère Filtres.

  2. Dans la boîte de dialogue du filtre qui s’ouvre, sélectionnez True, puis cliquez sur OK.

    Remarque : si vous n’êtes pas connecté à Tableau Server ou Tableau Cloud, l’option True n’est pas visible. Dans Tableau Desktop, connectez-vous à Tableau Server ou Tableau Cloud pour le sélectionner. Consultez Se connecter à Tableau Server ou Tableau Online(Le lien s’ouvre dans une nouvelle fenêtre) pour plus d’informations.

Étape 5 : Tester le calcul

  1. Dans Tableau Desktop, en bas à droite de l’espace de travail, cliquez sur la liste déroulante Appliquer un filtre utilisateur et modifiez l’utilisateur sur Sadie Pawthorne .

    La carte se met à jour de manière à afficher uniquement la région Ouest des États-Unis puisque Sadie est affectée à la région Ouest dans la feuille People.

  2. Sélectionnez à nouveau la liste déroulante Appliquer un filtre utilisateur et changez l’utilisateur sur Roxanne Rodriguez.

    La carte se met à jour de manière à afficher uniquement la région Centre des États-Unis puisque Roxanne est affectée à la région Centre dans la feuille People.

  3. Sélectionnez à nouveau la liste déroulante Appliquer un filtre utilisateur et changez l’utilisateur sur Chuck Magee.

    La carte se met à jour de manière à afficher uniquement la région Est des États-Unis puisque Chuck est affecté à la région Est dans la feuille People.

  4. Sélectionnez la liste déroulante Appliquer un filtre utilisateur et changez l’utilisateur sur Fred Suzuki.

    La carte se met à jour de manière à afficher uniquement la région Sud des États-Unis puisque Fred est affecté à la région Sud dans la feuille People.

  5. Sélectionnez une nouvelle fois la liste déroulante Appliquer un filtre utilisateur et changez l’utilisateur sur vous-même.

    La carte se met à jour de manière à afficher toutes les données puisque vous faites partie du groupe National Managers sur le serveur.

Ce comportement persiste lorsque vous publiez la vue sur Tableau Server ou Tableau Cloud. Les utilisateurs n’appartenant pas au groupe National Managers ou à la feuille People dans la source de données Sample Superstore ne verront qu’une visualisation vide.

Voir également

Fonctions dans Tableau

Fonctions de Tableau (par catégorie)

Fonctions de Tableau (par ordre alphabétique)

Merci de vos commentaires!Votre commentaire s été envoyé avec succès. Merci!