Informations d'exécution

Lorsqu'une activité manuelle est exécutée, le moteur de flux de travaux traite la stratégie d'allocation définie dans les métadonnées afin de récupérer la liste des cibles d'allocation pour cette tâche. Si la stratégie d'allocation est du type fonction, le moteur de flux de travaux traite les mappages d'entrée définis pour la fonction d'allocation associée et l'appelle afin de récupérer la liste des cibles d'allocation. Si la stratégie d'allocation est du type règle, le moteur du flux de travaux traite les mappages pour l'ensemble de règles spécifié et appelle le moteur de règles afin d'exécuter l'ensemble de règles pour extraire la liste des cibles d'allocation. Si la stratégie d'allocation est du type cible, la cible d'allocation est tout simplement celle qui est spécifiée dans les métadonnées et aucun traitement supplémentaire n'est requis.

Comme décrite dans les métadonnées pour un processus de flux de travaux (voir Métadonnées de définition de processus), une stratégie d'allocation d'échec peut être spécifiée pour un processus. Cette stratégie sera traitée et utilisée si l'appel de la stratégie d'allocation associée avec les résultats de tâche n'entraîne pas l'envoi de cibles d'allocation.

Le moteur de flux de travaux utilise alors la propriété curam.custom.workflow.workresolver afin de déterminer l'implémentation de la fonction utilisée pour attribuer des tâches dans l'application. Cette fonction est ensuite appelée par le moteur de flux de travaux en lui transmettant la liste des cibles d'allocation comme indiquée par la stratégie d'allocation, ainsi que les détails de la tâche à allouer.

Après que le programme de résolution de travail a été appelé pour la tâche, le moteur de flux de travaux fait appel à la méthode checkTaskAssignment dans la classe curam.core.sl.impl.TaskAssignmentChecker. Cette fonction vérifie le statut d'affectation de la tâche (par exemple, pour s'assurer qu'elle a été affectée à au moins un utilisateur ou objet organisationnel (unité d'organisation, poste ou emploi), ou bien à une file d'attente). Si la tâche n'a pas été affectée, la propriété d'application curam.workflow.defaultworkqueue par défaut est examinée afin de déterminer ce qui a été spécifié en tant que file d'attente de travaux par défaut pour le flux de travaux. La tâche est alors affectée à cette file d'attente de travaux.

Si la tâche a été affectée à un utilisateur, et à un utilisateur seulement, après que le travail a été résolu, le système vérifie la valeur de la propriété d'application curam.workflow.automaticallyaddtasktousertasks. Cet indicateur contrôle si le système va automatiquement ajouter la tâche spécifiée qui a été traitée à la liste des tâches de cet utilisateur afin de lui permettre de travailler dessus. La valeur par défaut de la propriété est NON. Toutefois, si OUI a été défini, le système ajoutera automatiquement cette tâche à la liste Mes tâches de l'utilisateur dans sa Boîte de réception afin de lui permettre de travailler dessus.