Application de workflow RAISEEXCEPTION
Aperçu
L'application de workflow RAISEEXCEPTION déclenche les exceptions d'annulation sur les actions spécifiées, contrôlées par l'exception de workflow d'annulation d'action dans le panneau de définition des conditions. Cette application de workflow peut ainsi être appelée par une action pour annuler une ou plusieurs autres actions dans une requête en cours. L'application est convertie en assembly de workflow pour simplifier la configuration et améliorer les performances.
Note : Vous pouvez supprimer l’application dans la console IIS ainsi que le dossier physique sur le serveur (\wfgen\WfApps\WebServices\RaiseException
). Par ailleurs, les paramètres d’authentification dans la déclaration de l’application de workflow ne sont pas nécessaires.
Ce dispositif est utile quand une ou plusieurs actions doivent être annulées après qu'un certain point dans le workflow ait été atteint, quoique ces actions aient été déjà activées. Comme exemple, si trois actions parallèles sont actives, mais une des actions parallèles est conclue avant les autres et vos règles de workflow déterminent que les deux autres actions ne sont plus exigées, vous pourriez activer le RAISEEXCEPTION pour annuler les deux autres actions et pour permettre le déroulement du workflow.
De plus, vous pouvez :
Utiliser les paramètres par défaut pour annuler toutes les actions d’une demande identifiée.
Utiliser les paramètres facultatifs pour annuler une liste d’actions instanciées dans une liste de demandes ou pour effectuer une annulation à la place d’un utilisateur défini.
Utiliser les paramètres supplémentaires pour définir plusieurs couples de références d’actions.
Utilisation des paramètres par défaut
Les paramètres REQUEST_ID
et ACTIVITY_NAME
doivent être utilisés ensemble.
Identifiant de la demande
Ce paramètre définit l’ID de la demande dans laquelle l’action sera annulée.
Nom : REQUEST_ID
Type de donnée : NUMERIC
Direction : IN
Nom de l’action
Ce paramètre définit le nom de l’action qui sera annulée.
Nom : ACTIVITY_NAME
Type de donnée : TEXT
Direction : IN
Exemple
Dans cet exemple, l’application va annuler tous les instances de l’action PENDING_ACTION
dans la demande 455
:
Utilisation des paramètres facultatifs
Les paramètres REQUEST_ID_LIST
et ACTIVITY_NAME_LIST
doivent être utilisés ensemble.
Liste des identifiants de demande
Ce paramètre définit une liste d’ID de demandes dans lesquelles l’action sera annulée.
Nom : REQUEST_ID_LIST
Type de donnée : TEXT
Direction : IN
Liste des noms des actions
Ce paramètre définit une liste d’ID de demandes dans lesquelles l’action sera annulée.
Nom : ACTIVITY_NAME_LIST
Type de donnée : TEXT
Direction : IN
Nom d’utilisateur
Ce paramètre est utilisé pour définir le nom d’utilisateur (username) utilisé pour annuler l’action. Le nom d’utilisateur utilisé doit faire partie d’un participant du processus.
Nom : USERNAME
Type de donnée : TEXT
Direction : IN
Note : Si ce paramètre n’est pas défini le compte utilisé est le compte défini dans le paramètre <add key="EngineServiceImpersonificationUsername" value=""/>
dans le fichier web.config
de l’application.
Mot de passe
Ce paramètre est utilisé pour définir le mot de passe associé au nom d’utilisateur utilisé pour annuler l’action.
Nom : PASSWORD
Type de donnée : TEXT
Direction : IN
EXCEPTION_NAME
EXCEPTION_NAME
Les valeurs possibles pour ce paramètre sont :
CANCEL
ERROR
TIMEOUT
ASSIGNMENT_ERROR
L’exception correspondante sera déclenchée sur l’action.
EXCEPTION_MESSAGE
EXCEPTION_MESSAGE
Ce paramètre est utilisé avec le nom de l’exception ERROR
pour fournir plus de détails sur l'erreur dans la mesure de suivi.
Exemples
Dans cet exemple l’application va annuler toutes les instances des actions PENDING_ACTION1
et PENDING_ACTION2
dans les demandes 445
, 446
et 447
:
Dans cet exemple l’application va annuler toutes les instances des actions nommées PENDING_ACTION
dans la demande 445
à la place de Jean Dupont (jdupont
):
Utilisation des paramètres supplémentaires
Identifiant de la demande
Ce paramètre définit l’ID de la demande dans laquelle l’action sera annulée pour le couple spécifié par le ?
(point d’interrogation).
Nom : EX?_REQUEST_ID
Type de donnée : NUMERIC
Direction : IN
Nom de l’action
Ce paramètre définit le nom de l’action qui sera annulée pour le couple spécifié par le ?
(point d’interrogation).
Nom : EX?_ACTIVITY_NAME
Type de donnée : TEXT
Direction : IN
Non prise en compte de l’erreur Nothing to do
Nothing to do
Par défaut, RAISEEXCEPTION renvoie une erreur si vous essayez d’annuler une action qui ne possède aucune instance ouverte. Si vous définissez ce paramètre sur Y
, l’application ignorera ce type d’erreur.
Nom : IGNORE_NOTHINGTODO_ERROR
Type de donnée : TEXT
Direction : IN
Exemple
Dans cet exemple l’application va annuler toutes les instances de l’action PENDING_ACTION1
dans la demande 455
et toutes les instances de l’action PENDING_ACTION2
dans la demande 456
. Si les actions 455
et 456
n’ont pas d’instance ouverte aucune erreur n’est remontée.
Erreurs d’exécution possibles
Les erreurs suivantes peuvent se produire lors de l’exécution de l’application :
Dernière mise à jour