Filtrage des données
Vous pouvez configurer le contenu des listes affichées dans votre fenêtre afin qu'il varie selon les informations que vous avez indiquées dans une autre section de la fenêtre. Vous pouvez, par exemple, appliquer un filtre à une liste afin que cette liste affiche uniquement les CI associés à l'utilisateur sélectionné. Vous pouvez également définir un filtre pour la liste de catégories, afin que différentes catégories soient disponibles selon l'élément de configuration (CI) choisi.
Vous pouvez créer de nouvelles liaisons d'objet, puis les utiliser pour le filtrage des données. Pour en savoir plus, reportez-vous à Liaison d'objets d'affaires non liés.
Création d'une règle de filtrage
Vous pouvez définir des règles de filtrage afin de limiter le nombre de résultats renvoyés par un objet en fonction de la valeur d'un autre objet. Vous pouvez utiliser une requête de filtrage dans votre règle de filtrage ou spécifier une valeur d'exécution.
L'exemple suivant montre comment afficher uniquement les éléments de configuration (CI) associés à l'utilisateur sélectionné dans la fenêtre Incident. Comme nous voulons limiter le nombre de CI affichés dans la fenêtre Incident, la règle de filtrage est basée sur l'attribut CI de l'objet Incident.
Pour créer une règle de filtrage :
- Démarrez le composant Concepteur d'objet, puis naviguez jusqu'à l'objet d'affaires auquel vous voulez appliquer des filtres.
Dans notre exemple, Gestion des incidents | Incident. - Dans la liste Attributs, sélectionnez l'attribut auquel ajouter le filtre.
Dans notre exemple, CI. - Dans la grille des propriétés, cliquez sur
en regard de la propriété Contrôles de sélection de filtre.
La boîte de dialogue Contrôles de sélection du filtre d'attribut s'affiche. - Cliquez sur Nouvelle règle de filtrage.
La boîte de dialogue Contrôle de sélection du filtre d'attribut s'affiche.
Vous pouvez choisir de limiter le nombre d'enregistrements renvoyés par la règle de filtrage soit à l'aide d'une requête de filtrage contenant des critères pour sélectionner uniquement les valeurs voulues, soit à l'aide d'une valeur d'exécution qui définit la valeur sur celle que vous avez spécifiée à un autre endroit. Par exemple, vous pouvez utiliser une valeur d'exécution pour configurer le champ de groupe d'une affectation afin qu'il corresponde au groupe principal de l'analyste qui a journalisé l'incident.
Pour en savoir plus sur l'utilisateur d'une valeur d'exécution, reportez-vous à Filtrage des données avec une valeur d'exécution.
Dans notre exemple, nous allons utiliser une requête de filtre qui sélectionne uniquement les CI associés à l'utilisateur Déclenché par pour l'incident.
- Cliquez sur le bouton d'option Sélectionner une requête de filtrage, puis cliquez dans la liste sur [Nouveau].
La boîte de dialogue Nouveau filtre s'affiche.
S'il existe une requête de filtre adaptée, vous pouvez la sélectionner dans la liste.
Pour en savoir plus sur la création de requêtes de filtre, reportez-vous à Filtres.
- Spécifiez le titre du filtre.
Notez que le module et l'objet d'affaires du groupe Basé sur et du groupe Filtrer par sont déjà définis. L'objet Basé sur est l'objet associé de l'attribut pour lequel vous configurez le sélecteur de filtre (dans notre exemple, Gestion des configurations\CI). L'objet Filtrer par est celui sur lequel porte l'attribut de sélecteur de filtre (dans notre exemple, Gestion des incidents\Incident). Cela signifie que, pour ajouter des critères à la requête de filtre, vous mettez en correspondance des attributs de CI et des attributs d'incident.
- Sélectionnez le bouton d'option Tout le monde, puis cliquez sur OK.
L'utilitaire Filter Builder démarre. - Dans l'arborescence Attributs, faites glisser Titre vers la liste Attributs sélectionnés.
Vous pouvez également ajouter tous les attributs que vous prévoyez d'utiliser dans une liste complexe au sein d'une conception de fenêtre (pour en savoir plus sur les listes complexes, reportez-vous à Listes complexes).
- Une fois que vous avez ajouté les attributs requis, cliquez sur Suivant.
La page Critères s'affiche. Elle permet de définir les conditions qui limitent le nombre de résultats renvoyés.
Nous voulons spécifier une valeur d'exécution qui sélectionne les CI associés à l'utilisateur Déclenché par pour l'incident. Les liens entre CI et utilisateurs sont de type n-à-n : un utilisateur peut posséder plusieurs CI (ordinateur, écran, imprimante, etc.) et un CI peut être associé à plusieurs utilisateurs (par exemple, une imprimante réseau). C'est pourquoi vous trouvez la collection Éléments de configuration (CI) utilisateur dans l'objet CI. Nous voulons utiliser comme critère de filtre l'attribut Utilisateur de cette collection.
Cela signifie que nous voulons utiliser le critère Éléments de configuration (CI) utilisateur.Utilisateur Est égal à (Déclenché par).
- Dans l'arborescence Attributs, faites glisser l'attribut sur lequel vous voulez baser le filtre vers la liste Critères actuels.
Dans notre exemple, développez la collection Éléments de configuration (CI) utilisateur, puis faites glisser Utilisateur vers la liste Critères actuels.
La boîte de dialogue Critères s'affiche ; le champ Attribut est déjà rempli avec Éléments de configuration (CI) utilisateur.Utilisateur. - Dans la liste Condition, sélectionnez Est égal à.
Outre la spécification d'une valeur absolue ou d'une valeur d'exécution pour le critère, vous pouvez sélectionner une condition qui définit le critère proprement dit, comme Est l'utilisateur actuel. Dans notre exemple, la sélection de l'option Est l'utilisateur actuel permet d'afficher tous les CI associés à l'utilisateur actuel, ce qui n'est pas le résultat que nous voulons obtenir. Nous voulons afficher les CI associés à l'utilisateur pour lequel l'incident a été créé (utilisateur Déclenché par). Pour ce faire, nous devons définir une valeur d'exécution pour ce critère.
- Cliquez sur le bouton d'option Indiquez une valeur d'exécution.
Des contrôles supplémentaires sont ajoutés à la boîte de dialogue Critères :
- Dans l'arborescence, sélectionnez Déclenché par, puis cliquez sur OK.
L'entrée Éléments de configuration (CI) utilisateur.Utilisateur Est égal à (Déclenché par) est ajoutée à la liste Critères actuels. - Dans la fenêtre Filter Builder, cliquez sur Terminer, puis sur Oui pour enregistrer vos modifications.
La fenêtre Concepteur de filtre se ferme et la boîte de dialogue Contrôle de sélection du filtre d'attribut affiche le nouveau filtre. - Dans la zone de groupe Sélectionner un type de client, choisissez l'option Tous (pour que le filtre s'applique à tous les clients) ou l'option Web Access uniquement (pour que le filtre s'applique uniquement aux applications fournies via Web Access, comme Web Desk). Cliquez ensuite sur OK.
Le filtre est intégré à la liste Règles de filtrage. Notez que l'option Type est configurée sur Requête. - Cliquez sur OK.
La règle de filtrage est ajoutée à l'attribut. - Cliquez sur
pour enregistrer les changements apportés à l'objet.
Pour modifier une règle de filtrage existante, sélectionnez-la dans la liste Règles de filtrage, puis cliquez sur Modifier.
Vous pouvez créer une autre autre règle de filtrage afin de sélectionner uniquement les CI dont le type correspond à celui sélectionné dans l'incident. Pour ce faire, vous mettez en correspondance la valeur Type de classe du CI avec l'entrée Type de CI sélectionnée pour l'incident, en tant que valeur d'exécution.
À savoir : AND Type de classe Est égal à (TypeCI)
Si possible, définissez le filtre sur un attribut propre à l'objet d'affaires concerné, plutôt que sur un attribut hérité d'un autre objet d'affaires. Si vous êtes obligé de créer le filtre sur un objet d'affaires hérité (l'attribut servant de critère de filtre n'est disponible que dans l'objet hérité), alors, lors de la création de la règle de filtrage, ajoutez-lui une condition supplémentaire permettant de l'appliquer uniquement à un type d'objet d'affaires spécifique.
Par exemple, pour l'objet d'affaires Incident, un filtre d'attribut portant sur Processus/Déclenché par doit filtrer les utilisateurs en fonction des clients sélectionnés dans la fenêtre Incident. Cela fonctionne correctement pour l'incident. Toutefois vous ne pouvez pas sélectionner de valeur Déclenché par pour l'objet d'affaires Changement car l'attribut Déclenché par est hérité de l'objet d'affaires Processus, si bien que le tri est toujours effectué par Incident/Client. Dans cet exemple, il est impossible de définir le filtre sur l'attribut Processus/Déclenché par, car Client ne fait pas partie de l'objet d'affaires Processus mais est propre à l'objet d'affaires Incident. Par conséquent, le filtre doit être limité à Incident/Déclenché par et ne pourra pas s'appliquer à d'autres objets d'affaires. Pour que cela fonctionne, vous ajoutez une condition de filtre indiquant que le filtre s'applique uniquement si la valeur Objet d'affaires est Incident.