Événements de workflow dans le système de base

  • Rversion finale: Yokohama
  • Mis à jour 30 janv. 2025
  • 6 minutes de lecture
  • Plusieurs événements de workflow sont disponibles dans le système de base.

    Tableau 1. Événements de workflow dans le système de base
    Événement Description Objectif Utilisation Source Thread Écouteurs
    activityComplete Valeur de chaîne utilisée par les définitions d’activité pour répondre au gestionnaire d’événements onActivityComplete . Informe les enregistrements de la table Activité d’exécution du workflow [wf_executing] sur l’achèvement d’autres activités dans le même contexte de workflow. Si l’activité est autorisée à définir la valeur booléenne pour wf_executing.notify_termination, définissez la valeur sur vrai (activity.notify_termination = vrai) pendant l’événement onExecute . Moteur de workflow, Achèvements de processus Thread actuel, mutex actuel Rejoindre l’activité
    otherEvent Valeur de chaîne utilisée par l’activité Joindre pour répondre à un otherEvent. Informe les enregistrements de la table Activité d’exécution du workflow [wf_executing] sur un otherEvent qui est terminé. L’activité Joindre passe par un nombre n d’activités précédentes. Ces activités précédentes créent toutes un enregistrement wf_executing, ce qui entraîne une vérification pour voir si l’enregistrement existe déjà. Si la jointure existe déjà, la jointure créée par la transition d’exécution définit l’enregistrement de wf_executing pour suppression. Rejoindre l’activité Thread actuel, mutex actuel Rejoindre l’activité, gestionnaire d’événements onOtherEvent
    minuteur Valeur de chaîne utilisée par les activités de workflow pour répondre à une activité de minuteur qui a expiré. Permet aux enregistrements wf_executing d’être informés d’une activité du minuteur qui a terminé et déclenché l’événement du minuteur. L’activité de minuteur planifie une tâche qui appelle un script. Le script appelle fireEvent (wf_executing, minuteur). Activité du minuteur via une tâche planifiée Thread de travail, mutex privé Activité du minuteur, gestionnaire d’événements onTimer
    execute Valeur de chaîne utilisée par les activités de workflow pour répondre à une activité de minuteur qui a expiré. Informe un enregistrement de la table wf_executing de l’état initial Exécution pour poursuivre son travail primaire. Le moteur de workflow, pour chaque transition exécutée, crée un enregistrement en cours d’exécution avec l’état En cours d’exécution. Une fois créé, l’enregistrement en cours d’exécution est placé dans une file d’attente pour traitement. Pour chaque élément de la file d’attente, les globaux Rhino sont établis, la définition d’activité qui pilote l’enregistrement en cours d’exécution est instanciée et la fonction run() est appelée. Lorsque l’état d’un enregistrement est En cours d’exécution, cette fonction appelle toujours onExecute. Moteur de workflow, via le gestionnaire WFActivity Thread actuel, mutex actuel Toutes les activités, gestionnaire d’événements onExecute
    exécuter (spécifique au verrou) Valeur de chaîne utilisée par l’activité de verrouillage pour répondre à un verrou en attente qui est prêt à effectuer une nouvelle tentative d’obtention d’un verrou spécifique. Cette exécution est différente de l’exécution précédente car elle est appelée sur un thread distinct, à des intervalles spécifiés, et est traitée comme un événement extérieur. Informe un enregistrement wf_executing en attente d’exécution que l’intervalle d’attente spécifié est dépassé et qu’il doit tenter d’obtenir à nouveau le verrou. Verrouiller l’activité planifie une tâche avec un script qui utilise la méthode fireEvent(wf_executing, « exécuter » de l’include de workflow. Verrouiller l’activité via une tâche planifiée Thread de travail, mutex privé Verrouiller l’activité, gestionnaire d’événements onExecute
    determineApprovalState Valeur de chaîne utilisée par les activités d’approbation pour répondre à un changement dans le statut d’approbation global de l’enregistrement actuel. Informe les enregistrements wf_executing pour les activités d’approbation d’une approbation qui a terminé et déclenché l’événement de minuteur. Le coordonnateur d’approbation s’inscrit à l’événement et déclenche l’événement. Les approbations enfants ont des écouteurs qui déterminent leur état d’approbation. Le coordinateur d’approbation déclenche l’événement pendant son onExecute Thread actuel, mutex actuel Le coordonnateur d’approbation, Approbation – Utilisateur et Approbation – Groupe ont tous des gestionnaires d’événements onDetermineApprovalState . Si l’état est autre que Demandé, l’activité est considérée comme terminée et l’état d’approbation (Approuvé, Rejeté, Annulé) est défini sur la colonne wf_executing.result
    Annuler (à partir des définitions d’activités) Valeur de chaîne utilisée par les activités de workflow pour répondre à une demande d’annulation. Informe tous les enregistrements wf_executing dans un contexte que le workflow est annulé. L’activité Fin utilise le workflow global.broadcastEvent (« annuler ») pour interrompre les enregistrements de wf_executing en cours d’exécution. Cela change l’état de ces enregistrements sur Annulé. Fin de l’activité Thread actuel, mutex actuel Toutes les activités, gestionnaire d’événements onCancel
    Annuler (en dehors du contexte actuel) Valeur de chaîne utilisée par les activités de workflow pour répondre à une demande d’annulation. Cet événement est le même que l’événement d’annulation ci-dessus et traité de la même manière. Cependant, la gestion de cet événement est subtilement différente. Cet événement informe tous les enregistrements wf_executing dans un contexte que le workflow est annulé. L’événement est géré via le gestionnaire d’événements onCancel de chaque définition d’activité en cours d’exécution, mais l’événement est appelé différemment. En particulier, l’appel d’annulation depuis l’extérieur d’une définition d’activité est bloqué par le mutex actuel. Il s’agit d’une différence significative dans la mesure où l’événement n’interrompt pas une activité en cours d’exécution qui fonctionne toujours dans les paramètres du mutex actuel. N’importe quel script peut appeler Cancel dans un contexte d’exécution connu via l’include de script de workflow. Par exemple, var w = new Workflow() ; w.cancel(context) ; //context est un GlideRecord du contexte à annuler. Tout script include, tâche planifiée, action d’interface utilisateur ou autre source Thread actuel, mutex privé Toutes les activités, gestionnaire d’événements onCancel
    Arrêter (voir Fin de l’activité) L’activité Fin recherche cet événement. Si l’événement d’arrêt est l’événement actuel, l’opération d’annulation de l’activité Fin est contournée. Uniquement dans l’activité Fin . N’importe quel script peut déclencher ou diffuser l’événement d’arrêt via un include de script ou un workflow Activité Exécuter le script Thread actuel, mutex actuel Cet événement est utilisé par l’activité Fin pour exclure l’activité Annuler et permettre à un workflow de se terminer, même en cas d’annulation.
    auditeur Valeur de chaîne que l’activité de workflow (flux secondaire) déclenche en tant qu’événement. Lorsqu’un workflow principal appelle un flux secondaire, le workflow conserve l’ID du contexte du flux secondaire dans le bloc-notes. Lorsque le flux secondaire est terminé, il déclenche l’événement d’écouteur via une règle métier. L’événement d’écouteur est transmis au contexte parent à la fin d’un flux secondaire et est géré par l’action onListener de l’activité de workflow. Règle métier déclenchée par la mise à jour d’un workflow ayant un parent Thread actuel, mutex actuel Cet événement est utilisé par un flux secondaire pour informer son flux parent qu’il est terminé. Le workflow parent réagira à cet événement et continuera.
    probe_complete Valeur de chaîne déclenchée dans le workflow par une activité Orchestration indiquant que le Serveur MID a terminé une tâche. L’événement probe_complete est déclenché à partir des processeurs de capteurs Orchestration via la fonction d’aide de workflow handleEventById. Le gestionnaire d’événements onProbe_complete se trouve dans WebServiceActivityHandler et est utilisé par la plupart des activités Orchestration. Événement utilisé pour reformuler un workflow en attente du traitement d’une tâche ou d’une activité par le MID Server Thread de travail, mutex privé Activités d’orchestration
    mise en pause Valeur de chaîne envoyée à un workflow à partir d’un SLA pour mettre en pause l’activité du minuteur . Lorsqu’un SLA est mis en pause, les workflows SLA doivent être mis en pause si un minuteur fonctionne. L’utilisation est exclusive au minuteur SLA SLA Règle métier thread, mutex privé Activité du minuteur
    reprendre Valeur de chaîne utilisée par l’activité de minuteur pour reprendre un minuteur en pause (voir pause). Lorsqu’un SLA est repris, les workflows SLA doivent également reprendre. L’utilisation est exclusive au minuteur SLA. SLA Règle métier thread, mutex privé Activité du minuteur