Créer une activité de workflow personnalisée
Date de publication : janvier 2017
S’applique à : Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online
Cette rubrique décrit comment créer une activité de workflow personnalisée et l’enregistrer pour l’utiliser dans Microsoft Dynamics 365 (Online et local). Pour Microsoft Dynamics 365 (Online), les activités de workflow personnalisées peuvent être inscrites pour s’exécuter dans le bac à sable (confiance partielle). Pour plus d’informations sur le bac à sable et la confiance partielle, voir Isolement, approbations et statistiques des plug-ins.
Contenu de la rubrique
Assemblys et logiciels requis
Utiliser la classe de base de workflow CodeActivity
Spécifier le nom et le nom du groupe d’une activité de workflow personnalisée
Assemblys et logiciels requis
Pour développer des activités personnalisées Windows Workflow Foundation 4 pour Dynamics 365, vous devez les développer dans Microsoft .NET Framework 4.5.2. Les assemblys suivants doivent être ajoutés comme références à votre projet. Ils se trouvent dans le dossier SDK\Bin du SDK de Microsoft Dynamics 365.Téléchargez le package Kit de développement logiciel (SDK) de Microsoft Dynamics CRM.
Microsoft.Xrm.Sdk.dll
Microsoft.Xrm.Sdk.Workflow.dll
Utiliser la classe de base de workflow CodeActivity
Pour créer une activité de workflow personnalisée, créez une classe qui hérite de la classe de base de workflow CodeActivity. Cette classe est disponible dans l’espace de noms System.Activities. Les activités qui héritent de la classe CodeActivity peuvent remplacer la méthode Execute pour produire une fonctionnalité personnalisée.
Démarrez Microsoft Visual Studio.
Dans le menu Fichier, cliquez sur Nouveau, puis cliquez sur Projet.
Dans la boîte de dialogue Nouveau projet, sélectionnez Workflow sous Visual C# dans le volet Modèles installés, puis sélectionnez Bibliothèque d’activités.
Spécifiez un nom et un emplacement pour la solution, puis cliquez sur OK.
Accédez au menu Projet et sélectionnez Propriétés. Sous l’onglet Application, spécifiez .NET framework 4.5.2 comme infrastructure cible.
Ajoutez des références aux assemblys Microsoft.Xrm.Sdk.dll et Microsoft.Xrm.Workflow.dll.
Supprimez le fichier Activity1.xaml dans le projet.
Ajoutez un fichier de classe (.cs) au projet. Dans l’Explorateur de solutions, cliquez avec le bouton droit sur le projet, sélectionnez Ajouter, puis cliquez sur Classe. Dans la boîte de dialogue Ajouter un nouvel élément, tapez un nom pour la classe, puis cliquez sur Ajouter.
Ouvrez le fichier de classe et ajoutez ce qui suit à l’aide des instructions :
using System.Activities;using Microsoft.Xrm.Sdk;using Microsoft.Xrm.Sdk.Workflow;
Faites en sorte que la classe hérite de la classe CodeActivity et donnez-lui un modificateur d’accès public comme indiqué ici :
public class SampleCustomActivity : CodeActivity
Ajoutez des fonctionnalités à la classe en insérant une méthode Execute :
protected override void Execute(CodeActivityContext context){ //Activity code}
Pour plus d'informations, voir Ajouter des métadonnées à une activité de workflow personnalisée.
Spécifiez des paramètres d’entrée et de sortie. Pour plus d'informations, voir Ajouter des métadonnées à une activité de workflow personnalisée.
Dans les propriétés du projet, sous l’onglet Signature, sélectionnez Signer l’assembly et spécifiez un nom de fichier principal. Les assemblys d’activité de workflow personnalisées (et les plug-ins) doivent être signés.
Compilez le projet pour créer un assembly .dll ().
Pour afficher l’exemple de code qui montre comment créer une activité de workflow personnalisée, voir Exemple : créer une activité de workflow personnalisée.
Important
Pour améliorer les performances, Microsoft Dynamics 365 met en cache les instances d’activité de workflow personnalisées. La méthode Execute de l’activité de workflow personnalisée doit être écrite sans faire mention de l’état, car le constructeur n’est pas appelé pour chaque invocation de l’activité de workflow personnalisée. En outre, plusieurs threads système peuvent exécuter l’activité de workflow personnalisée simultanément. Comme toutes les informations sur l’état de l’invocation sont enregistrées dans le contexte, il est par conséquent déconseillé d’utiliser des variables globales ou des variables membres pour passer les données d’une invocation à l’autre.
Spécifier le nom et le nom du groupe d’une activité de workflow personnalisée
Si vous inscrivez un assembly d’activité de workflow personnalisée, spécifiez le nom et le nom du groupe. La propriété de nom spécifie le nom de l’activité de workflow. La propriété de nom du groupe spécifie le nom du sous-menu ajouté au menu principal du concepteur de processus Microsoft Dynamics 365. Ces propriétés lient l’activité de workflow personnalisée au concepteur de processus Microsoft Dynamics 365, afin que le nom d’activité personnalisé apparaisse dans l’interface utilisateur.
Pour spécifier le nom et le nom du groupe d’une activité de workflow personnalisée, utilisez les attributs PluginType.Name et PluginType.WorkflowActivityGroupName lorsque vous inscrivez l’assembly d’activité de workflow personnalisée. Pour plus d’informations sur l’inscription des activités de workflow personnalisées, voir Inscrire et utiliser un assembly d’activité de workflow personnalisée. Si les attributs PluginType.Name et PluginType.WorkflowActivityGroupName sont définis sur la valeur null, l’activité personnalisée est masquée dans le concepteur de workflow Microsoft Dynamics 365 et est uniquement accessible à partir des workflows XAML.
Si vous utilisez l’outil Plug-in Registration (Inscription de plug-in) pour inscrire l’assembly d’activité de workflow personnalisée, vous pouvez spécifier les valeurs appropriées dans les zones Nom et WorkflowActivityGroupName, sous Modifiable. Pour plus d’informations sur l’utilisation de l’outil d’inscription de plug-in, voir Procédure pas-à-pas : inscrire un plug-in à l’aide de l’outil Plug-in Registration (Inscription de plug-in).
Une fois cette activité de workflow personnalisée inscrite, vous pouvez l’utiliser à partir du concepteur de processus Microsoft Dynamics 365 pour les workflows ou les boîtes de dialogue. Pour plus d'informations, voir Inscrire et utiliser un assembly d’activité de workflow personnalisée.
Voir aussi
Activités de workflow personnalisées (assemblys de workflow)
Ajouter des métadonnées à une activité de workflow personnalisée
Utiliser le service Web IOrganization dans une activité de workflow personnalisée
Exemple : créer une activité de workflow personnalisée
Exemple : Activité de workflow personnalisée compatible Azure
Windows Workflow Foundation 4 Base Activity Classes
Microsoft Dynamics 365
© 2017 Microsoft. Tous droits réservés. Copyright