Anwenden von Regeln auf Workflowzustände (Vererbungsprozess)
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019
Nachdem Sie Ihren Workflowstatus für einen Arbeitsaufgabentyp hinzugefügt oder geändert haben, möchten Sie möglicherweise eine oder mehrere Regeln definieren, die je nach Änderung des Workflowstatus angewendet werden. Das Hinzufügen von Regeln zu Workflowzuständen unterstützt die folgenden Szenarien:
- Unterstützen eines Genehmigungsprozesses
- Verhindern, dass nicht autorisierte Benutzer einen ungültigen Zustand festlegen
- Festlegen eines felds erforderlich oder schreibgeschützt oder eines anderen Werts basierend auf Statusänderungen
- Einschränken des Übergangs von einem Zustand zu einem anderen
- Einschränken oder Zulassen von Statusübergängen auf bestimmte Benutzer oder Gruppen
- Verwalten eines kontrollierten Workflowprozesses zur Unterstützung von Überwachungsanforderungen
- Automatisieren des Schließens übergeordneter Arbeitsaufgaben
- Unterstützen eines Genehmigungsprozesses
- Verhindern, dass nicht autorisierte Benutzer einen ungültigen Zustand festlegen
- Festlegen eines felds erforderlich oder schreibgeschützt oder eines anderen Werts basierend auf Statusänderungen
- Einschränken des Übergangs von einem Zustand zu einem anderen
- Automatisieren des Schließens übergeordneter Arbeitsaufgaben
- Unterstützen eines Genehmigungsprozesses
- Festlegen eines felds erforderlich oder schreibgeschützt oder eines anderen Werts basierend auf Statusänderungen
- Automatisieren des Schließens übergeordneter Arbeitsaufgaben
Lesen Sie diesen Artikel, um zu verstehen, wie Regeln definiert werden, die angewendet werden, wenn Sie einen Workflowstatus ändern.
- Grundlegendes zu den Typen von Workflowregeln
- Workflowstatus- und Regelbeschränkungen und bewährte Methoden
- Festlegen eines Feldwerts oder Festlegen eines schreibgeschützten oder erforderlichen Felds basierend auf der Statusauswahl
- Einschränken von Zustandsübergängen
- Einschränken oder Zulassen von Statusübergängen auf bestimmte Benutzer oder Gruppen
- Automatisieren von Statusübergängen übergeordneter Arbeitsaufgaben
- Grundlegendes zu den Typen von Workflowregeln
- Workflowstatus- und Regelbeschränkungen und bewährte Methoden
- Festlegen eines Feldwerts oder Festlegen eines schreibgeschützten oder erforderlichen Felds basierend auf der Statusauswahl
- Einschränken von Zustandsübergängen
- Automatisieren von Statusübergängen übergeordneter Arbeitsaufgaben
- Grundlegendes zu den Typen von Workflowregeln
- Workflowstatus- und Regelbeschränkungen und bewährte Methoden
- Festlegen eines Feldwerts oder Festlegen eines schreibgeschützten oder erforderlichen Felds basierend auf der Statusauswahl
- Automatisieren von Statusübergängen übergeordneter Arbeitsaufgaben
Wichtig
Das Vererbungsprozessmodell ist für Projekte verfügbar, die für die Unterstützung konfiguriert sind. Wenn Sie eine ältere Sammlung verwenden, überprüfen Sie die Prozessmodellkompatibilität. Wenn Ihre lokale Sammlung für die Verwendung des lokalen XML-Prozessmodells konfiguriert ist, können Sie dieses Prozessmodell nur verwenden, um die Arbeitsverfolgungserfahrung anzupassen. Weitere Informationen finden Sie unter Auswählen des Prozessmodells für Ihre Projektsammlung.
Workflowregeln
In der folgenden Tabelle sind die drei Gruppen von Workflowregeln aufgeführt, die Sie definieren können. Die erste Gruppe wendet Standardaktionen an, wenn eine Arbeitsaufgabe erstellt, in einem ausgewählten Zustand oder von einem Zustand in einen anderen verschoben wird. Diese Standardaktionen legen den Wert eines Felds fest oder machen ein Feld schreibgeschützt oder erforderlich. In dieser Gruppe können Sie eine oder zwei Bedingungen und mehrere Aktionen angeben.
Die zweite und dritte Gruppe unterstützen das Einschränken von Zustandsübergängen. Mit diesen beiden Gruppen können Sie eine und nur eine Bedingung angeben, in die der Zustand angegeben wird, in den eine Arbeitsaufgabe verschoben wurde. Anschließend können Sie eine oder mehrere Aktionen angeben, um den Übergang von diesem Zustand zu anderen Zuständen einzuschränken.
Die folgende Tabelle gibt die beiden Gruppen von Workflowregeln an, die Sie definieren können. Die erste Gruppe wendet Standardaktionen an, wenn eine Arbeitsaufgabe erstellt, in einem ausgewählten Zustand oder von einem Zustand in einen anderen verschoben wird. Diese Standardaktionen legen den Wert eines Felds fest oder machen ein Feld schreibgeschützt oder erforderlich. In dieser Gruppe können Sie eine oder zwei Bedingungen und mehrere Aktionen angeben.
Die zweite Gruppe unterstützt das Einschränken von Zustandsübergängen. In dieser zweiten Gruppe können Sie eine und nur eine Bedingung angeben, in die der Status einer Arbeitsaufgabe verschoben wurde. Anschließend können Sie eine oder mehrere Aktionen angeben, um den Übergang von diesem Zustand zu anderen Zuständen einzuschränken.
Hinweis
Bestimmte Features erfordern die Installation des Azure DevOps Server 2020.1-Updates. Weitere Informationen finden Sie unter Azure DevOps Server 2020 Update 1 RC1 Versionshinweise, Boards.
Workflowbedingungen und Aktionen, die Sie festlegen können, sind in den folgenden Bildern dargestellt. Sie können Standardaktionen anwenden, wenn eine Arbeitsaufgabe erstellt wird, in einem ausgewählten Zustand oder von einem Zustand in einen anderen verschoben wird. Diese Standardaktionen legen den Wert eines Felds fest oder machen ein Feld schreibgeschützt oder erforderlich. Für diesen Regelsatz können Sie eine oder zwei Bedingungen und mehrere Aktionen angeben.
Condition
Unterstützte Aktionen
Festlegen des Feldwerts oder Festlegen eines schreibgeschützten/erforderlichen Werts basierend auf dem Status
Einschränken eines Übergangs basierend auf dem Status
Feld ausblenden oder Feld schreibgeschützt machen oder auf der Grundlage der Status- und Benutzer- oder Gruppenmitgliedschaft erforderlich machen
Legen Sie basierend auf und benutzer- oder Gruppenmitgliedschaft ein Feldattribute fest, oder beschränken Sie einen Statusübergang.
Hinweis
Wenn Sie einen geerbten Prozess anpassen, spiegeln alle Projekte, die diesen Prozess verwenden, automatisch die Anpassungen wider. Um einen reibungslosen Übergang sicherzustellen, empfehlen wir, einen Testprozess und ein Projekt zu erstellen, mit dem Sie Ihre Anpassungen testen können, bevor Sie sie organisationsweit implementieren. Weitere Informationen finden Sie unter Erstellen und Verwalten geerbter Prozesse.
Workflowstatus- und Regelgrenzwerte
In der folgenden Tabelle sind die Workflowstatus- und Regelgrenzwerte für den Vererbungsprozess zusammengefasst.
Object | Vererbungslimit |
---|---|
Für einen Prozess definierte Arbeitselementtypen | 64 |
Für einen Arbeitselementtyp definierte Workflowstatus | 32 |
Für einen Arbeitselementtyp definierte Regeln | 1024 |
Beim Definieren von Workflowstatus und -regeln empfiehlt es sich, die folgenden Anleitungen zu berücksichtigen, um Leistungsprobleme zu minimieren.
- Minimieren Sie die Anzahl der Regeln, die Sie für ein WIT definieren. Während Sie mehrere Regeln für ein Arbeitselementtyp erstellen können, können sich Additionsregeln negativ auf die Leistung auswirken, wenn Benutzer*innen Arbeitselemente hinzufügen und ändern. Wenn Benutzer*innen Arbeitselemente speichern, überprüft das System alle Regeln, die den Feldern für den Arbeitselementtyp zugeordnet sind. Unter bestimmten Bedingungen ist der Regelüberprüfungsausdruck für die SQL-Auswertung zu komplex.
- Minimieren Sie die Anzahl der benutzerdefinierten Arbeitsaufgabentypen.
Workflowregeln werden beim Hinzufügen oder Ändern von Arbeitselementen über eine der folgenden Schnittstellen angewendet:
- Webportal: Arbeitselementformular, Massenaktualisierungen, Aktualisierungen in der Abfrageansicht
- Webportal: Board oder Taskboard, Arbeitsaufgabe in Spalte verschieben
- Visual Studio 2017 und frühere Versionen, Arbeitsaufgabenformular
- CSV-Dateiformat: Massenimport oder -aktualisierung
- Excel: Massenimport oder -aktualisierung
- REST-API: Hinzufügen oder Ändern von Arbeitsaufgaben
Definieren einer Regel
Bevor Sie eine Regel basierend auf Workflowzuständen definieren, definieren Sie die folgenden Elemente:
- Der Workflow gibt an, wie in "Workflow anpassen" beschrieben
- Wenn für Die Regel eine Spezifikation eines benutzerdefinierten Felds erforderlich ist, fügen Sie dieses Feld dem Arbeitsaufgabentyp hinzu, wie in "Hinzufügen und Verwalten von Feldern" beschrieben.
- Wenn Ihre Regel die Spezifikation einer Sicherheitsgruppe erfordert, um Änderungen basierend auf der Benutzer- oder Gruppenmitgliedschaft zu gewähren oder einzuschränken, definieren Sie diese Sicherheitsgruppe, wie unter "Hinzufügen oder Entfernen von Benutzern oder Gruppen" beschrieben, sicherheitsgruppen verwalten.
Informationen zu den Grundlagen zum Definieren von Regeln finden Sie unter Hinzufügen einer benutzerdefinierten Regel. Sie müssen die in diesem Artikel definierten Voraussetzungen erfüllen.
Festlegen des Feldwerts oder Festlegen eines schreibgeschützten oder erforderlichen Felds
Mit der ersten Gruppierung von Regeln können Sie eine oder zwei Bedingungen und bis zu 10 Aktionen pro Regel angeben.
Beispiel für die Sicherstellung der Genehmigung von Teamleitern vor aktiver Arbeit
In diesem Beispiel möchten Entwicklungsteams sicherstellen, dass keine User Story bearbeitet wird, bis sie von einem Teamleiter genehmigt wurde. Die Standardworkflowzustände werden verwendet, und nur ein einzelnes benutzerdefiniertes Feld, genehmigt von und Sicherheitsgruppe, Teamleitergruppe, werden hinzugefügt.
Standardworkflowstatus
Regelanforderungen
Um die Genehmigung vor der aktiven Arbeit sicherzustellen, definieren Sie die folgenden Regeln:
- Das Feld "Genehmigt von" muss ausgefüllt werden, wenn der Status von "Neu" in "Aktiv" wechselt.
- Benutzer einschränken, die nicht zur Teamleitergruppe gehören, um das Feld "Genehmigt nach " auszufüllen
- Löschen des Felds "Genehmigt nach ", wenn der Status in " Neu " oder "Entfernt" verschoben wird
Regeldefinitionen
Die Regelanforderungen werden in die folgenden vier Regeldefinitionen übersetzt.
Regelname
Condition
Aktionen
Genehmigt durch löschen, wenn "Neu"
Wann A work item state changes to New
Dann Clear the value of Approved By
Genehmigt durch löschen, wenn sie entfernt wurde
Wann A work item state changes to Removed
Dann Clear the value of Approved By
Genehmigt von Schreibgeschützt
Wann Current user is not member of group Team Leads Group
Dann Make read-only Approved By
Genehmigt von erforderlich
Wann A work item state changes from New to Active
Dann Make required Approved By
Einschränken von Zustandsübergängen
Wenn Sie die Bedingung angeben, A work item state moved from ...
können Sie nur diese Bedingung angeben. Sie können bis zu 10 Aktionen angeben.
Hinweis
Für dieses Feature wird Azure DevOps Server 2020.1, Update 1 oder höher benötigt.
Beispiel für das Einschränken von Zustandsübergängen und genehmigten Status
Die folgenden Workflowzustände sind für den User Story definiert. Die geerbten Zustände "Neu", "Aufgelöst" und "Entfernt " sind ausgeblendet. Stattdessen werden "Vorgeschlagen", "Überprüfen" und "Ausschneiden" verwendet. Darüber hinaus werden drei weitere Zustände definiert: Untersuchen, Entwerfen und Genehmigt. Diese Zustände sollten der Sequenz folgen, wie in der folgenden Abbildung dargestellt.
Ohne Einschränkungen können Benutzer von einem Staat in einen anderen Staat wechseln, sowohl vorwärts als auch rückwärts innerhalb der Sequenz.
Regelanforderungen
Um einen kontrollierteren Workflow zu unterstützen, entschied sich die Unternehmensgruppe, Regeln zu erstellen, die die folgenden Vorwärts- und Umgekehrt-Zustandsübergänge für den Arbeitsaufgabentyp "User Story" unterstützen würden.
- Vorgeschlagen kann nur nach Forschung und Schnitt verschoben werden
- Forschung kann nur auf "Entwurf" und "Ausschneiden" verschoben werden.
- Design kann nur zu "Recherchieren", "Genehmigt" und "Ausschneiden" wechseln.
- Genehmigt kann nur in "Entwurf", "Aktiv" und "Ausschneiden" verschoben werden.
- Aktiv kann nur zu "In Review" wechseln
- In "Überprüfen" kann nur zu "Aktiv" (weitere Arbeit gefunden), "Geschlossen " oder "Ausschneiden" verschoben werden.
- Geschlossen kann zu "Recherchieren", "Entwurf", "Aktiv", "Überprüfen" wechseln (Ermöglicht Fällen, in denen der Benutzer die Arbeitsaufgabe fehlerhaft geschlossen hat)
- "Ausschneiden" kann nur auf "Vorgeschlagen" verschoben werden.
Hinweis
Berücksichtigen Sie beim Einschränken von Zustandsübergängen die Fälle, in denen ein Benutzer einen Fehlerstatus verschiebt. Sie möchten, dass Benutzer ordnungsgemäß wiederherstellen können.
Darüber hinaus möchte die Unternehmensgruppe Regeln für erforderliche Felder anwenden:
- Das Feld "Genehmigt von" muss ausgefüllt werden, wenn der Status von "Genehmigt" zu "Aktiv" wechselt.
- Benutzer, die zur Gruppe "Autorisierte Genehmigende Personen" gehören, dürfen nur das Feld "Genehmigt nach " ausfüllen.
- Löschen des Felds "Genehmigt nach ", wenn der Status in "Ausschneiden" verschoben wird
- Die Annahmekriterien müssen ausgefüllt werden, wenn der Status in "Aktiv" wechselt.
Regeldefinitionen
Um die oben genannten Einschränkungen zu implementieren, fügt der Prozessadministrator ein benutzerdefiniertes Feld "Genehmigt nach Identität", eine Sicherheitsgruppe für autorisierte Genehmigende Personen und die folgenden 11 Regeln hinzu.
Regelname
Condition
Aktionen
Vorgeschlagener Zustand
Wann A work item state moved from Proposed
Dann Restrict the state transition to Design
Und Restrict the state transition to Approved
Und Restrict the state transition to Active
Und Restrict the state transition to In Review
Und Restrict the state transition to Closed
Forschungszustand
Wann A work item state moved from Research
Dann Restrict the state transition to Proposed
Und Restrict the state transition to Approved
Und Restrict the state transition to Active
Und Restrict the state transition to In Review
Und Restrict the state transition to Closed
Entwurfszustand
Wann A work item state moved from Design
Dann Restrict the state transition to Proposed
Und Restrict the state transition to Research
Und Restrict the state transition to Active
Und Restrict the state transition to In Review
Und Restrict the state transition to Closed
Genehmigter Zustand
Wann A work item state moved from Approved
Dann Restrict the state transition to Proposed
Und Restrict the state transition to Research
Und Restrict the state transition to Design
Und Restrict the state transition to In Review
Und Restrict the state transition to Closed
Aktiver Zustand
Wann A work item state moved from Active
Dann Restrict the state transition to Proposed
Und Restrict the state transition to Research
Und Restrict the state transition to Design
Und Restrict the state transition to Approved
Und Restrict the state transition to Closed
Im Status "Überprüfen"
Wann A work item state moved from In Review
Dann Restrict the state transition to Proposed
Und Restrict the state transition to Research
Und Restrict the state transition to Design
Und Restrict the state transition to Approved
Geschlossener Zustand
Wann A work item state moved from Closed
Dann Restrict the state transition to Proposed
Und Restrict the state transition to Cut
Ausschneiden des Zustands
Wann A work item state moved from Cut
Dann Restrict the state transition to Research
Und Restrict the state transition to Design
Und Restrict the state transition to Approved
Und Restrict the state transition to Active
Und Restrict the state transition to In Review
Und Restrict the state transition to Closed
Erforderliche Felder für den genehmigten Zustand
Wann A work item changes from Approved to Active
Dann Make required Acceptance Criteria
Und Make required Approved By
Autorisierte Genehmigende Personen
Wann Current user is not a member of Authorized Approvers
Dann Make read-only Approved By
Löschen des Felds "Genehmigt nach"
Wann A work item state changes to Cut
Dann Clear the value of Approved By
Überprüfen von Statusübergangseinschränkungen
Sobald die Regeln für den Prozess definiert sind und das Projekt mit dem Prozess aktualisiert wurde, aktualisieren Sie Ihren Browser, und überprüfen Sie die Vorgänge über das Arbeitsaufgabenformular und aus dem Browser.
Für die in der vorherigen Tabelle definierten Regeln sollten die folgenden Dropdownmenüs "Status" angezeigt werden. Öffnen Sie das Board, und überprüfen Sie die Möglichkeit, von einem Bundesland zu einem anderen zu wechseln.
Vorgeschlagen | Recherchieren | Entwurf | Genehmigt |
---|---|---|---|
Aktiv | Überprüfen | Geschlossen | Ausschneiden |
Einschränken des Statusübergangs basierend auf der Benutzer- oder Gruppenmitgliedschaft
Bei der Angabe einer der beiden Bedingungen basierend auf der Benutzer- oder Gruppenmitgliedschaft Current user is member of group ...
oder Current user is not member of group ...
können Sie nur eine Bedingung angeben. Wenn Sie die Aktion Restrict the transition to state...
angeben, können Sie auch nur eine Aktion angeben.
Hinweis
Arbeitselemente unterliegen den für sie geltenden Regeln. Bedingte Regeln, die auf Benutzer- oder Gruppenzugehörigkeit basieren, werden für Ihren Webbrowser zwischengespeichert. Wenn Sie ein Arbeitselement nicht aktualisieren können, sind Sie möglicherweise auf eine dieser Regeln gestoßen. Wenn Sie der Ansicht sind, dass ein aufgetretenes Problem nicht auf Sie zutrifft, finden Sie weitere Informationen unter Behandeln von Problemen bei der Zwischenspeicherung von Arbeitselementen.
Automatisieren von Statusübergängen übergeordneter Arbeitsaufgaben
Informationen zum Automatisieren von Statusübergängen für übergeordnete Arbeitsaufgaben basierend auf den Statuszuweisungen ihrer untergeordneten Arbeitsaufgaben finden Sie unter Automatisieren von Übergängen des Arbeitsaufgabenstatus.
Automatisieren der Neuzuweisung basierend auf Zustandsänderungen
Der Arbeitsaufgabentyp "Agile-Prozess" hatte zuvor eine Regel, die den Fehler dem Ersteller neu zugewiesen hat. Diese Regel wurde aus dem Standardsystemprozess entfernt. Sie können die Regel erneut festlegen oder eine ähnliche Regel zu anderen Arbeitsaufgabentypen hinzufügen, indem Sie die folgende Bedingung und Aktion verwenden:
When A work item state changes to
Resolved Then Copy the value from
Created By to Assigned To.
Verwandte Artikel
Hinweis
Überprüfen Sie änderungen, die an einem geerbten Prozess über das Überwachungsprotokoll vorgenommen wurden. Weitere Informationen finden Sie unter Access, Export und Filtern von Überwachungsprotokollen.