Accéder au contenu principal

Comportement des filtres dans les rôles

Vous pouvez combiner différents filtres définis pour être appliqués sur la même vue.

Lorsque vous utilisez plusieurs conditions et prédicats dans les rôles, gardez à l'esprit ceci :

  • Les prédicats Or, And et Not peuvent désormais être utilisés.
  • Le prédicat Not ne fonctionne pas s'il existe plusieurs conditions.
  • Lorsque plusieurs conditions sont définies, le prédicat or ou and utilisé sur la dernière condition, ne l'est pas pour combiner des conditions.
  • Les prédicats sont appliqués aux conditions selon leur ordre de séquence. Par exemple, si quatre conditions C1, C2, C3, C4 sont définies dans l'ordre suivant :
        C1    and
        C2    or
        C3    and
        C4    none

    Les prédicats sont appliqués aux conditions de cette manière : (((C1 and C2) or C3) and C4).

  • Lors de la définition d'une condition, la valeur de type String peut être saisie avec ou sans guillemets doubles.

Par exemple, un utilisateur ou une utilisatrice a deux rôles assignés RoleFinance et RoleLogistics successivement. Ces rôles ont différents filtres sur la même Vue ProductFamily de l'entité ProductFamily.

Les filtres du premier rôle RoleFinance sont définis avec deux conditions C1 et C2 comme suit :

XPath Operator (Opérateur) Valeur Prédicat Alias de la condition
ProductFamily/Id > "3" and C1
ProductFamily/ChangeStatus Contains (Contient) "Pending" or C2

Les filtres du second rôle RoleLogistics sont définis avec deux conditions C3 et C4, comme suit :

XPath Operator (Opérateur) Valeur Prédicat Alias de la condition
ProductFamily/Id < "5" and C3
ProductFamily/ChangeStatus Contains (Contient) "Completed" Aucun C4

Les filtres des deux rôles sont combinés pour donner (((C1 and C2) or C3) and C4).

Lorsqu'un utilisateur ou une utilisatrice a les deux rôles RoleFinance et RoleLogistics assignés et effectue une requête sur les données avec la vue ProductFamily, aucune donnée n'est retournée car le statut de modification de la famille de produits ne peut être Pending et Completed en même temps.

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – faites-le-nous savoir.