Workflow-Aktivität „Freigabe - Gruppe“

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 8 Minuten Lesedauer
  • Die Aktivität Freigabe - Gruppe erstellt Freigabedatensätze für jedes Mitglied einer angegebenen Gruppe.

    Hinweis:
    Diese Aktivität ist nur verfügbar, wenn der Workflow in einer Tabelle ausgeführt wird, die die Aufgabe erweitert.

    Die Gruppenfreigabe wird basierend auf den Benutzerfreigaben gemäß der im Feld Warten auf angegebenen Logik genehmigt oder abgelehnt.

    Ergebnisse

    Der Workflow-Designer kann mit activity.result einen Ergebniswert aus einem Skriptfeld der Aktivität zuweisen. Standardmäßig ist der Ergebniswert die endgültige Freigabedisposition. Diese Disposition hängt von den Freigabeaktionen ab, die von den Genehmigern ausgeführt werden, und den Freigabebedingungen, die in den Feldern Warten auf oder Wenn jemand ablehnt festgelegt sind. Mögliche Ergebniswerte sind:
    • Genehmigt
    • Abgelehnt
    • Gelöscht
    • Abgebrochen

    Eingabevariablen

    Eingabevariablen bestimmen das anfängliche Verhalten der Aktivität.

    Tabelle : 1. Eingabevariablen der Aktivität „Freigabe - Gruppe“
    Feld Beschreibung
    Freigabe - Gruppe - Wann

    Geben Sie an, wann diese Aktivität einen Gruppenfreigabe-Datensatz generiert.

    Bedingung Bedingungen, die zur Generierung der Gruppenfreigabe führen, wenn sie erfüllt werden. Werden die Bedingungen nicht erfüllt, wird die Freigabe übersprungen.
    Freigabe - Gruppe - Genehmiger

    Geben Sie die Gruppen an, von denen eine Freigabe angefordert wird.

    Gruppen Die Gruppen, von denen eine Freigabe angefordert wird.

    Um dieses Feld zu bearbeiten, klicken Sie auf das Schlosssymbol. Verwenden Sie die Nachschlageliste, um bestimmte Gruppen nach Namen auszuwählen. Um zur Laufzeit Gruppen aus Feldwerten im aktuellen Datensatz auszuwählen, klicken Sie auf das Baumsymbol.

    Jedem Mitglied der Gruppe wird ein individueller Freigabedatensatz zugewiesen.

    Wenn keine Gruppe ausgewählt ist, legt die Aktivität die Freigabe automatisch auf Genehmigt fest.

    Freigabe - Gruppe - Bedingung

    Legen Sie fest, wie die Aktivität basierend auf den Antworten einzelner Gruppenmitglieder entscheidet, ob die Gruppenfreigabe genehmigt oder abgelehnt wird.

    Warten auf
    Eine Auswahl zwischen verschiedenen Freigabelogiken zum Bestimmen, welche individuellen Freigaben oder Ablehnungen zu einer Freigabe oder Ablehnung der Freigabe der Aktivität führen. Die Optionen sind:
    • Eine Freigabe von jeder Gruppe: Ein beliebiger Benutzer aus jeder Gruppe kann eine Freigabe erteilen, und die erste Freigabe aus jeder Gruppe bewirkt, dass die Aktivität mit dem Ergebnis genehmigt abgeschlossen wird (die Behandlung einer Ablehnung wird weiter unten beschrieben).
    • Eine Freigabe von einer beliebigen Gruppe: Ein beliebiger Benutzer aus einer beliebigen Gruppe kann eine Freigabe erteilen, und die erste Freigabe aus einer beliebigen Gruppe bewirkt, dass die Aktivität mit dem Ergebnis genehmigt abgeschlossen wird.
    • Eine Freigabe von jedem in allen Gruppen: Alle Benutzer aus allen Gruppen müssen eine Freigabe erteilen, damit die Aktivität mit dem Ergebnis genehmigt abgeschlossen wird (die Behandlung einer Ablehnung wird weiter unten beschrieben).
    • Die erste Antwort von jeder Gruppe: Die erste Freigabe oder Ablehnung von einem beliebigen Benutzer in jeder Gruppe wird verwendet, um den Status der Gruppenfreigabe anzugeben (die Behandlung einer Ablehnung wird weiter unten beschrieben).

      Geben Sie an, was passiert, wenn ein beliebiger Benutzer die Freigabeanforderung ablehnt. Die Optionen sind:

    • Freigabe ablehnen: Die Aktivität wird sofort mit dem Ergebnis abgelehnt abgeschlossen.
    • Die erste Antwort von einer beliebigen Gruppe: Die erste Freigabe oder Ablehnung von einem beliebigen Benutzer in einer beliebigen Gruppe bewirkt, dass die Aktivität mit dem Ergebnis genehmigt oder abgelehnt abgeschlossen wird.
    • Auf Skript basierende Bedingung: Jedes Mal, wenn ein Benutzer eine Freigabe oder Ablehnung erteilt, wird das Freigabeskript aufgerufen, um zu bestimmen, ob die Aktivität abgeschlossen werden soll.
    Freigabeskript

    Wird nur angezeigt, wenn Warten auf auf Auf Skript basierende Bedingung festgelegt ist.

    Ist die Variable Warten auf auf Auf Skript basierende Bedingung festgelegt, wird dieses Skript aufgerufen, um zu bestimmen, wie eine Freigabe oder Ablehnung gehandhabt wird. Das Skript muss die Variable answer auf „genehmigt“ oder „abgelehnt“ festlegen, um den Gesamtstatus für diese Freigabe anzugeben.

    Das Skript ist dafür zuständig, den Freigabestatus für jede Gruppe festzulegen, die Teil dieser Freigabeaktivität ist, bevor der Gesamtfreigabestatus für alle Gruppen zurückgegeben wird.

    Beim Aufruf stehen dem Skript die folgenden Variablen für alle Gruppen zur Verfügung, die Teil dieser Freigabeaktivität sind:

    counts.total = total number of groups that are part of this approval
                      counts.approved = # of groups that approved so far
                      counts.rejected = # of groups that rejected so far
                      counts.requested = # of groups that are pending approval
                      counts.not_requested = # of groups that are not pending approval
                      counts.not_required = # of groups that approval is not required
    Und für jede Gruppe:
    groups[group_id].total = total number of users that are part of this group's approval
                        groups[group_id].approved = # of users that approved so far
                        groups[group_id].rejected = # of users that rejected so far
                        groups[group_id].requested = # of users that are pending approval
                        groups[group_id].not_requested = # of users that are not pending approval
                        groups[group_id].not_required = # of users that approval is not required
                        groups[group_id].approvalIDs[state] = array of user ids that are at the specified approval state
    Hinweis: Iterieren Sie die Gruppen mit:
    for (var id in groups) {
                        var group = groups[id];
                        ... group.total ...
                        }
    Hinweis: Rufen Sie das Gruppenobjekt mit dem folgenden Code ab (um z. B. den Gruppennamen zu ermitteln, für den eine Iteration durchgeführt wird):
    var objGroup = fncGetGroupObj(id);
                        var strGroupName = objGroup.name;
                        
                        function fncGetGroupObj(sidGroupApproval)
                        {
                        var objGroupApproval = new GlideRecord('sysapproval_group');
                        objGroupApproval.get(sidGroupApproval);
                        
                        var objGroup = new GlideRecord('sys_user_group');
                        objGroup.get(objGroupApproval.assignment_group.sys_id);
                        
                        return objGroup;
                        }
    Freigabeskripts erlauben auch Berechnungen. Wenn beispielsweise nur die Hälfte der Freigaben erforderlich ist:
    if (counts.approved/counts.total > .49) {
                        answer = 'approved';
                        }
                        else if (counts.rejected/counts.total > .50) {
                        answer = 'rejected';
                        }
    Wenn jemand ablehnt
    Eine Auswahl zwischen verschiedenen Freigabelogiken zum Bestimmen, welche individuellen Ablehnungen zu einer Ablehnung der Freigabe der Aktivität führen. Die Optionen sind:
    • Freigabe ablehnen: Die Aktivität wird sofort mit dem Ergebnis abgelehnt abgeschlossen.
    • Vor der Entscheidung auf andere Antworten warten: Es wird auf den Eingang anderer Antworten gewartet, bevor eine Entscheidung über die Freigabe oder Ablehnung getroffen wird. Dies ermöglicht es Benutzern, ihre Meinung zu ändern, bis eine Entscheidung getroffen wird.
    Hinweis:
    Wenn Warten auf auf Beliebiger Genehmiger festgelegt ist, bewirkt eine einzige Freigabe, dass die Aktivität mit dem Ergebnis genehmigt abgeschlossen wird, auch wenn ein oder mehrere Benutzer ablehnen.
    Freigabe - Gruppe - Zeitplan

    Legen Sie fest, wie der Workflow das erwartete Start- und Fälligkeitsdatum des Freigabedatensatzes berechnet. Nachdem Sie eine Auswahl für „Fälligkeitsdatum basiert auf“ und „Zeitplan basiert auf“ getroffen haben, werden die entsprechenden Felder angezeigt.

    Fälligkeitsdatum basiert auf Wählen Sie aus, wie der Workflow die Dauer, das Fälligkeitsdatum und den Zeitplan der Aufgabe bestimmt.
    • Eine benutzerdefinierte Dauer: Die Dauer basiert auf einem benutzerdefinierten Wert.
    • Eine relative Dauer: Die Dauer wird aus einer relativen Dauer berechnet (z. B. Ende des nächsten Geschäftstages).
    • Ein Feld für Datum/Uhrzeit oder Dauer: Die Dauer basiert auf dem Wert eines Felds im aktuellen Datensatz.
    • Skript: Die Dauer wird von einem Skript zurückgegeben.
    Dauer

    Wird nur angezeigt, wenn Fälligkeitsdatum basiert auf auf Eine benutzerdefinierte Dauer festgelegt ist.

    Die spezifische Anzahl von Tagen und Stunden.
    Relative Dauer

    Wird nur angezeigt, wenn Fälligkeitsdatum basiert auf auf Eine relative Dauer festgelegt ist.

    Die allgemeine Anzahl und Länge von Geschäftstagen.
    Feld für Fälligkeitsdatum

    Wird nur angezeigt, wenn Fälligkeitsdatum basiert auf auf Ein Feld für Datum/Uhrzeit oder Dauer festgelegt ist.

    Ein Feld für Datum/Uhrzeit oder Dauer.
    Skript für Fälligkeitsdatum

    Wird nur angezeigt, wenn Fälligkeitsdatum basiert auf auf Skript festgelegt ist.

    Das Skript, das 'answer' auf die Anzahl der Sekunden für die Dauer setzt.
    Zeitplan basierend auf Der grundlegende Zeitplan, nach dem der Timer Arbeitsstunden zählt. Wenn ein Zeitplan bereitgestellt wird, wird die Dauer nur für Zeiten berücksichtigt, die im Zeitplan angegeben sind. Wenn die Dauer beispielsweise 2 Stunden beträgt und der Workflow in einem Zeitplan von 8:00 Uhr bis 17:00 Uhr um 16:00 Uhr beginnt, endet er am nächsten Tag um 9:00 Uhr. Die Optionen sind:
    • Zeitplan dieses Workflows: Der Zeitplan verwendet Datum und Uhrzeit des Workflow-Kontexts und einen optionalen Wert für Zeitzone basiert auf.
    • Ein bestimmter Zeitplan: Der Zeitplan verwendet einen vordefinierten Zeitplan und einen optionalen Wert für Zeitzone basiert auf .
    • Ein Zeitplanfeld: Der Zeitplan verwendet einen Wert aus einer Tabelle und einen optionalen Wert für Zeitzone basiert auf.
    Zeitplan

    Wird nur angezeigt, wenn Zeitplan basierend auf auf Ein bestimmter Zeitplan festgelegt ist.

    Der vordefinierte Zeitplan aus einer Liste.
    Zeitplanfeld

    Wird nur angezeigt, wenn Zeitplan basierend auf auf Ein Zeitplanfeld festgelegt ist.

    Ein Datums- und Uhrzeit- oder Dauerfeld für den Zeitplan, das der Tabelle zugeordnet ist. Gültige Felder werden im Dialogfeld „Element aus der Struktur auswählen“ in Blau angezeigt.
    Zeitzone basiert auf Die Zeitzone für die Berechnung der Dauer. Die Zeitzone kann auf Folgendem basieren:
    • Keine Zeitzone: Standardeinstellung. Der Workflow verwendet die GMT-Zeitzone.
    • Eine bestimmte Zeitzone: Eine bestimmte Zeitzone, die Sie in einer Auswahlliste auswählen.
    • Ein Zeitzonenfeld: Ein Zeitzonenfeld, um die Zeitdauer von einem Feld im Formular zu verfolgen.
    Zeitzone

    Wird nur angezeigt, wenn Zeitzone basiert auf auf Eine bestimmte Zeitzone festgelegt ist

    .
    Wählen Sie die gewünschte Zeitzone in der Auswahlliste aus.
    Zeitzonenfeld

    Wird nur angezeigt, wenn Zeitzone basiert auf auf Ein Zeitzonenfeld festgelegt ist.

    Ein Datums- und Uhrzeit- oder Dauerfeld für den Zeitplan, das der Tabelle zugeordnet ist. Gültige Felder werden im Dialogfeld „Element aus der Struktur auswählen“ in Blau angezeigt.
    Freigabe - Erweitert

    Schreiben Sie ggf. ein Skript zur Bestimmung zusätzlicher Benutzer, von denen Freigaben angefordert werden sollen.

    Erweitert Aktivieren Sie diese Checkbox, um ein Skript zur Bestimmung zusätzlicher Benutzer zu schreiben, von denen Freigaben angefordert werden sollen. Verwenden Sie das Skript Zusätzliches Gruppenskript, um Gruppenfreigaben anzupassen.
    Zusätzliches Gruppenskript
    Wenn die Checkbox Erweitert aktiviert ist, wird dieses Skript aufgerufen, um zusätzliche Gruppenfreigaben zu bestimmen, die erstellt werden sollen. Das Skript muss die Variable answer auf eine durch Kommas getrennte Liste von Gruppen-IDs oder ein Array von Gruppen-IDs festlegen, die als Genehmigergruppen hinzugefügt werden sollen. Beispiel:
    answer = [];
           answer.push('id1');
           answer.push('id2');

    Bedingungen

    Die folgenden Bedingungen bestimmen, welcher Übergang nach dieser Aktivität ausgeführt wird.
    Hinweis:
    Genehmigungsaktivitäten werden als der Benutzer ausgeführt, dessen Aktionen den Genehmigungs- oder Ablehnungsbedingungen entspricht, auf die der Workflow wartet und die den Workflow fortführen.
    Tabelle : 2. Bedingungen der Aktivität „Freigabe - Gruppe“
    Bedingung Beschreibung
    Genehmigt Die Benutzer aus den Gruppen haben die Anforderung auf Basis der Regeln für Warten auf genehmigt.
    Abgelehnt Die Benutzer aus den Gruppen haben die Anforderung auf Basis der Regeln für Warten auf abgelehnt.
    Fehler Das Event oder die Bedingung, das bzw. die einen Fehler generiert.
    Übersprungen Das Event oder die Bedingung, das bzw. die eine übersprungene Freigabe zulässt.

    Status

    Der Aktivitätsstatus teilt der Workflow-Engine mit, wie mit der Aktivität verfahren werden soll.
    Tabelle : 3. Status der Aktivität „Freigabe - Gruppe“
    Status Beschreibung
    Wird ausgeführt Die Workflow-Engine startet die Funktion execute der Aktivität.
    Warten Die Workflow-Engine ignoriert die Aktivität, bis ein bestimmtes Event zum Neustarten der Aktivität ausgelöst wird.
    Fertig Die Ausführung der Aktivität ist abgeschlossen. Der Ergebniswert gibt das Ergebnis der Aktivität an.
    Abgebrochen Diese Aktivität oder der Workflow, der diese Aktivität enthält, wurde abgebrochen.
    Fehler Ein JavaScript-Fehler ist aufgetreten. Überprüfen Sie die Protokolle auf Fehlerdetails.