Exemples de scénarios de règles personnalisées

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019

Cet article fournit des exemples de définitions de règles personnalisées. Toutes les règles personnalisées sont définies pour un type d’élément de travail. Des exemples sont fournis pour les modèles hérités et locaux de processus XML.

Avant d’ajouter des règles personnalisées, lisez les règles et l’évaluation des règles et ajoutez une règle à un type d’élément de travail (processus d’héritage).

Définir un champ obligatoire dépendant

Vous pouvez spécifier qu’un champ n’est requis que lorsqu’un autre champ contient une valeur spécifique. Dans l’exemple suivant, lorsqu’un client signale un problème, le champ Client Signalé personnalisé est défini sur True et le champ Gravité devient obligatoire. Si le problème n’est pas signalé par un client, une valeur pour le champ Gravité n’est pas requise.

Capture d’écran de la règle personnalisée pour rendre la gravité requise lorsque le champ REported client=true.

Effacer la valeur d’un champ dépendant

L’exemple suivant illustre la définition d’une règle personnalisée pour effacer la valeur des points d’histoire lorsqu’une modification est apportée à la date de début.

Capture d’écran de la règle personnalisée pour effacer la valeur des points de montage lorsque la date de début change.

Définir une valeur de champ dépendante

Les exemples suivants illustrent comment mapper les valeurs du champ Taille en fonction de la valeur sélectionnée pour le champ personnalisé, champ Taille du tee-shirt.

La liste de choix taille du tee-shirt se compose de quatre valeurs Small, Medium, Large et X-Large. Quatre règles personnalisées sont définies pour affecter le champ Taille lorsque le champ Taille du tee-shirt est remplacé par une valeur spécifique. Pour simplifier l’utilisation, la valeur par défaut de la taille du tee-shirt est petite.

Boîte de dialogue Modifier le champ Taille du tee-shirt

Capture d’écran de la boîte de dialogue Modifier le champ Taille du tee-shirt.

Règle personnalisée

Capture d’écran de la règle personnalisée pour définir la valeur Taille du tee-shirt lorsque la taille du tee-shirt est définie sur Petite.

Quatre règles personnalisées

Capture d’écran de quatre règles personnalisées pour définir la valeur Taille du tee-shirt lorsque la taille du tee-shirt est définie.

Exiger une valeur de champ lors des modifications d’état

L’exemple suivant montre comment vous pouvez exiger la spécification du champ Travail restant lorsque l’état du flux de travail de tâche passe à Actif.

Capture d’écran de la règle personnalisée pour rendre le travail restant nécessaire lorsque l’état est remplacé par Actif.

Effacer la valeur d’un champ lors de la fermeture de l’état

Pour automatiser l’effacement du champ Travail restant lors de la fermeture d’une tâche, définissez une règle personnalisée comme indiqué.

Capture d’écran de la règle personnalisée sur zéro travail restant requis lorsque l’état est remplacé par Fermé.

Restreindre la création d’éléments de travail par un groupe

Une règle personnalisée qui limite la transition vers la catégorie d’état proposé d’un type d’élément de travail interdit efficacement la création d’éléments de travail de ce type. En appliquant la règle à un groupe spécifique, vous empêchez efficacement ce groupe de créer des éléments de travail de ce type.

La règle personnalisée suivante empêche une équipe de projet de créer des éléments de travail en tant que catégorie d’état proposée est mappée à l’état Nouveau flux de travail.

Capture d’écran de la règle personnalisée pour restreindre la création d’un élément de travail par un groupe.

Restreindre la modification des éléments de travail par un groupe

Pour un processus d’héritage, vous pouvez empêcher les utilisateurs de modifier un élément de travail en définissant l’autorisation refuser pour un groupe sur un chemin d’accès à la zone. Pour un processus XML local, vous pouvez placer des restrictions sur chaque état de flux de travail d’un groupe qui les empêche d’enregistrer l’élément de travail dans n’importe quel état.

Il n’est pas possible de définir une règle personnalisée qui limite la modification des éléments de travail d’un type spécifique. Vous ne pouvez spécifier que la restriction par état. Si l’utilisateur ne modifie pas l’état, il peut modifier d’autres champs, sauf si tous les champs sont effectués en lecture seule pour le groupe.

Au lieu de cela, si vous souhaitez restreindre un groupe d’utilisateurs à modifier la sélection d’éléments de travail de n’importe quel type, vous pouvez affecter ces éléments de travail à un chemin d’accès de zone. Définissez un groupe de sécurité, puis définissez des restrictions pour modifier les éléments de travail pour ce chemin d’accès de zone pour ce groupe, comme illustré dans l’image suivante. Pour plus d’informations, consultez Définir les autorisations et l’accès pour le suivi du travail, Créer des nœuds enfants et modifier des éléments de travail sous un chemin d’accès de zone

Capture d’écran de la boîte de dialogue Autorisations d’un chemin d’accès à la zone pour restreindre les modifications des éléments de travail.

Restreindre les transitions d’état

Pour les processus hérités, les transitions d’état any-to-any sont automatiquement définies. Cela permet aux utilisateurs d’avancer l’état du flux de travail de nouveau à terminé, mais également de reculer en cas de besoin. Lorsque vous définissez des règles personnalisées pour restreindre une transition, gardez à l’esprit que si un utilisateur fait une erreur lors de la mise à jour du flux de travail, il se peut qu’il ne soit pas en mesure de le corriger. Par exemple, ils peuvent mettre à jour l’état en déplaçant un élément de travail carte vers une étape ultérieure du tableau Kanban, mais pas le déplacer vers l’arrière.

Conseil

Envisagez de restreindre une transition d’état pour certains utilisateurs, mais pas tous. De cette façon, si un utilisateur fait une erreur, il peut demander à un autre membre de l’équipe de réinitialiser la valeur d’état pour contourner la restriction.

Avant de définir des règles de transition d’état, passez en revue les règles et l’évaluation des règles, les règles générées automatiquement et la façon dont les états de flux de travail et les catégories d’état sont utilisés dans les backlogs et les tableaux.

Restreindre la modification des éléments de travail fermés

Selon vos processus métier, vous pouvez empêcher les utilisateurs de continuer à modifier ou mettre à jour des éléments de travail qui ont été fermés ou terminés. Vous pouvez ajouter des règles aux types d’éléments de travail pour empêcher les utilisateurs de rouvrir les éléments de travail fermés.

Pour le processus hérité, vous pouvez ajouter une règle qui limite la transition d’état. Par exemple, la règle suivante limite la transition de la fermeture aux deux autres États, Nouveau et Actif.

Remarque

La A work item state moved from ... condition est disponible pour Azure DevOps Server 2020 et versions ultérieures.

Règle personnalisée, l’utilisateur actuel n’est pas membre d’un groupe, interdit les transitions vers un état Nouveau ou Actif à partir de Closed

Remarque

Selon l’action de règle que vous spécifiez, le bouton Enregistrer du formulaire d’élément de travail peut être désactivé ou un message d’erreur s’affiche lorsqu’un utilisateur restreint tente de modifier l’élément de travail.

Masquer ou restreindre la modification d’un champ en fonction d’un utilisateur ou d’un groupe

Lorsque vous sélectionnez ou Current user is a member of group...Current user is not a member of group..., vous pouvez masquer un champ, créer un champ en lecture seule ou rendre un champ requis.

Par exemple, la condition suivante indique que le champ Justification est masqué pour les membres qui n’appartiennent pas au groupe Fabrikam Fibre\Voice.

Règle personnalisée, l’utilisateur actuel n’est pas membre d’un groupe, champ Masquer la justification

Remarque

Les éléments de travail sont soumis aux règles qui leur sont appliquées. Les règles conditionnelles basées sur l’appartenance d’un utilisateur ou d’un groupe sont mises en cache pour votre navigateur web. Si vous vous trouvez limité à la mise à jour d’un élément de travail, vous avez peut-être rencontré l’une de ces règles. Si vous pensez que vous avez rencontré un problème qui n’est pas traité ici, consultez Problèmes de mise en cache IndexDB du formulaire d’élément de travail.

Restreindre la modification de certains champs en fonction d’un utilisateur ou d’un groupe

Vous pouvez personnaliser les types d’éléments de travail pour restreindre les personnes pouvant modifier un champ spécifique pour un type d’élément de travail.

Remarque

Pour Azure DevOps Server 2019 et versions antérieures, vous ne pouvez restreindre la modification des éléments de travail qu’en fonction d’un utilisateur ou d’un groupe avec le modèle de processus XML local.

À l’aide de l’une des deux conditions suivantes, vous pouvez définir des champs sélectionnés requis pour un utilisateur d’un groupe de sécurité ou qui ne sont pas membres d’un groupe de sécurité.

  • current user is a member of a group...
  • current user is not a member of a group...

Conseil

Pour éviter les problèmes d’évaluation des règles qui peuvent survenir, spécifiez des groupes de sécurité Azure DevOps et non des groupes de sécurité Microsoft Entra ou Active Directory. Pour en savoir plus, consultez les règles par défaut et le moteur de règles.

Par exemple, vous pouvez définir le titre ou les champs État en lecture seule pour sélectionner des utilisateurs ou des groupes.

Par exemple, le champ Priorité , pour le type d’élément de travail User Story, devient en lecture seule pour les membres du groupe Fabrikam Fibre\Voice. Lorsqu’un utilisateur de ce groupe ouvre un récit utilisateur, il ne peut pas modifier la valeur sur le champ Priorité.

Règle personnalisée, l’utilisateur actuel n’est pas membre d’un groupe, rendre le champ Priorité en lecture seule