Créer ou modifier les actions personnalisées à partir d’un flux de travail

Cette rubrique s’applique à Dynamics 365 Customer Engagement (on-premises). Pour la version Power Apps de cette rubrique, consultez : Configurer des actions personnalisées à partir d’un flux de travail

Vous pouvez activer une action personnalisée à partir d’un workflow sans écrire de code. Pour plus d’informations, consultez Appeler des actions personnalisées à partir d’un workflow.

Vous pouvez également créer une action afin qu’un développeur puisse l’utiliser dans du code, ou vous pouvez être amené à modifier une action déjà définie. Comme les processus de workflow, prenez en compte les éléments suivants :

  • Que doit faire cette action ?

  • Dans quelles conditions l’action doit-elle être effectuée ?

Contrairement aux processus de workflow, il est inutile de définir les options suivantes :

  • Démarrer lorsque : Les actions démarrent lorsque le code appelle le message généré pour celles-ci.

  • Étendue : Les actions fonctionnent toujours dans le contexte de l’utilisateur appelant.

  • Exécuter à l’arrière-plan : Les actions sont toujours des flux de travail en temps réel.

Les actions ont également quelque chose que les processus de workflow n’ont pas : des arguments d’entrée et de sortie. Pour plus d’informations, consultez Définir les arguments de processus.

Créer une action

Important

Si vous créez une action à inclure dans le cadre d’une solution destinée à être distribuée, créez-la dans le contexte de la solution. Accédez à Paramètres>Solutions et recherchez la solution non managée dont cette action fera partie. Ensuite, dans la barre de menus, sélectionnez Nouveau>Processus. Cela assure la cohérence du préfixe de personnalisation associé au nom de l’action avec d’autres composants dans la solution. Après avoir créé l’action, vous ne pouvez pas modifier le préfixe.

Comme les processus de workflow, les actions ont les propriétés suivantes dans la boîte de dialogue Créer un processus.

Nom de processus
Après avoir entré un nom du processus, un nom unique lui est créé en supprimant tous les espaces et caractères spéciaux du nom de processus.

Catégorie
Cette propriété établit qu’il s’agit d’un processus en cours. Vous ne pouvez pas modifier cela après avoir enregistré le processus.

Entité
Avec des processus actions, vous pouvez sélectionner une entité pour fournir le contexte au workflow comme pour les autres types de processus, mais vous avez également la possibilité de choisir Aucun (Global). Utilisez cette option si votre action ne nécessite pas le contexte d’une entité spécifique. Vous ne pouvez pas modifier cela après avoir enregistré le processus.

Type
Utilisez cette propriété pour choisir de créer entièrement une nouvelle action ou de la démarrer à partir d’un modèle.

Modifier une action

Vous devez désactiver les processus avant de les modifier.

Vous pouvez modifier une action qui a été créée dans le cadre d’une solution non gérée ou qui est incluse dans une solution installée dans votre organisation. Si la solution est une solution gérée, vous ne pourrez peut-être pas la modifier. L’éditeur de solutions a la possibilité de modifier les propriétés gérées afin que l’action installée avec une solution gérée ne puisse pas être modifiée.

Lorsqu’une action est enregistrée, un nom unique est généré en fonction du nom du processus. Ce nom unique a le préfixe de personnalisation ajouté à partir de l’éditeur de solutions. Il s’agit du nom du message qu’un développeur utilise dans son code.

Lorsque vous modifiez une action, vous avez plusieurs possibilités :

Nom du processus
Une fois le processus créé et le nom unique généré à partir du nom du processus, vous pouvez modifier le nom du processus. Vous voudrez peut-être appliquer une convention d’affectation de noms pour repérer plus facilement les processus spécifiques.

Nom unique
Lorsqu’une action est enregistrée, un nom unique est généré en fonction du nom du processus. Ce nom unique a le préfixe de personnalisation de l’éditeur de solutions ajouté. Il s’agit du nom du message qu’un développeur utilise dans son code. Ne modifiez pas ce nom unique si le processus a été activé et que le code est en place pour appeler l’action en utilisant ce nom.

Important

Une fois l’action activée et le code conçu pour utiliser un nom unique, le nom unique ne doit pas être modifié sans modifier également le code auquel il fait référence.

Activer la restauration
Généralement, les processus qui prennent en charge les transactions veulent « annuler » (ou restaurer) l’opération entière si une partie échoue. Voici quelques exceptions à cela. Certaines actions que les développeurs peuvent exécuter dans du code initialisé par l’action peuvent ne pas prendre en charge des transactions. Par exemple, si le code effectue des actions dans d’autres systèmes en dehors de la portée de la transaction. Ces dernières ne peuvent pas être annulées par l’action qui s’exécute dans une application. Certains messages sur la plateforme ne prennent pas en charge les transactions. Mais tout ce que vous pouvez faire avec l’interface utilisateur de l’action prend en charge les transactions. Toutes les actions qui font partie d’un workflow en temps réel sont considérées comme faisant partie de la transaction, mais avec les actions vous pouvez faire différemment.

Vous devez consulter le développeur qui utilisera ce message pour déterminer s’il est nécessaire qu’elles soient dans la transaction ou non. En règle générale, une action doit faire partie de la transaction si les actions effectuées par les processus d’entreprise n’ont pas de sens tant qu’elles ne sont pas toutes terminées correctement. L’exemple classique est le transfert de fonds entre deux comptes bancaires. Si vous retirez des fonds d’un compte, vous devez les déposer dans l’autre. Si l’une des deux actions échoue, les deux doivent échouer.

Note

Vous ne pouvez pas activer la restauration si une action personnalisée est appelée directement à partir d’un workflow. Vous pouvez activer la restauration si une action est déclenchée par un message de services Web de Dynamics 365 Customer Engagement (on-premises).

Activer en tant que
Comme pour tous les processus, vous pouvez activer le processus sous la forme d’un modèle et l’utiliser comme point de départ avancé pour les processus qui suivent un modèle similaire.

Définir des arguments de processus
Dans cette zone, vous spécifiez toutes les données que l’action attend pour démarrer et les données à transmettre au terme de l’action. Pour plus d’informations, consultez Définir les arguments de processus.

Ajouter des étapes, des conditions et des actions
Comme pour les autres processus, vous spécifiez les actions à effectuer et à quel moment les effectuer. Pour plus d’informations, consultez Ajouter des étapes, conditions et actions

Définir les arguments de processus

Lorsqu’un développeur utilise un message, il peut commencer par certaines données à transmettre dans le message. Par exemple, pour créer un enregistrement d’incident, la valeur du titre de l’incident peut être transmise en tant qu’argument d’entrée.

Lorsque le message est terminé, le développeur peut vouloir transmettre certaines données qui ont été modifiées ou générées par le message à une autre opération dans son code. Ces données sont l’argument de sortie.

Les arguments d’entrée et de sortie doivent avoir un nom, un type et certaines informations indiquant si l’argument est toujours obligatoire. Vous pouvez également fournir une description.

Le nom du message et les informations sur tous les arguments du processus sont la « signature » du message. Lorsqu’une action est activée et utilisée dans le code, la signature ne doit pas changer. Si cette signature change, cela provoque l’échec du code qui utilise le message. La seule exception à cela peut être la modification d’un des paramètres afin qu’il ne soit pas toujours obligatoire.

Vous pouvez modifier l’ordre des arguments en les triant ou en les déplaçant vers le haut ou vers le bas, car les arguments sont identifiés par leur nom et non par leur ordre. De plus, le fait de modifier la description ne modifie pas le code qui utilise le message.

Types d’argument des processus d’action

Le tableau suivant décrit les types d’argument des processus d’action.

Type Description
Booléenne Valeur true ou false.
Date/Heure Valeur qui stocke les informations de date et d’heure.
Décimal Valeur sous forme de nombre à précision décimale. Utilisée lorsque la précision est extrêmement importante.
Entité Enregistrement pour l’entité spécifiée. Quand vous sélectionnez Entité, la liste déroulante est activée et vous permet de sélectionner le type d’entité.
EntityCollection Collection d’enregistrements d’entités.
EntityReference Objet qui contient le nom, l’ID et le type d’un enregistrement d’entité qui l’identifie de façon unique. Quand vous sélectionnez EntityReference, la liste déroulante est activée et vous permet de sélectionner le type d’entité.
Flottant Valeur sous forme de nombre à précision décimale. Utilisé lorsque les données proviennent d’une mesure qui n’est pas tout à fait précise.
Entier Nombre entier.
Devise Valeur qui stocke les données concernant une somme d’argent.
Liste déroulante Valeur qui représente une option pour un attribut OptionSet.
String Valeur texte

Note

Les valeurs de l’argument EntityCollection ne peuvent pas être définies dans l’interface utilisateur pour des conditions ou des actions. Ces valeurs sont fournies par les développeurs dans le code personnalisé en vue de leur utilisation. Plus d’informations : Créer vos propres actions

Ajouter des phases et des étapes

Les actions sont un type de processus très similaire aux workflows en temps réel. Toutes les étapes qui peuvent être utilisées dans les workflows en temps réel peuvent l’être dans des actions. Pour plus d’informations sur les étapes pouvant être utilisées pour les workflows en temps réel et les actions, voir Phases et étapes de workflow.

En plus des étapes pouvant être utilisées pour les workflows en temps réel, les actions comportent également l’étape Attribuer une valeur. Dans les actions, elle peut être utilisée uniquement pour définir les arguments de sortie. Vous pouvez utiliser l’Assistant Formulaire pour définir des valeurs spécifiques pour les arguments de sortie ou, plus probablement, des valeurs qui proviennent de l’enregistrements dans lequel l’action s’exécute, des enregistrements associés à cet enregistrement avec une relation plusieurs-à-un, des enregistrements créés dans une précédente étape ou des valeurs qui font partie du processus lui-même.

Voir aussi

Actions
Invoquer des actions personnalisées à partir d’un workflow
Surveiller les workflows et les actions en temps réel
Processus de workflow
Vue d’ensemble des flux de processus d’entreprise
Surveillance et gestion des processus de workflow
Créer vos propres actions