Erstellen einer benutzerdefinierten Workflowaktivität

 

Veröffentlicht: Januar 2017

Gilt für: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online

In diesem Thema wird beschrieben, wie Sie eine benutzerdefinierte Workflowaktivität erstellen und für die Verwendung in Microsoft Dynamics 365 (online und lokal) registrieren. Für Microsoft Dynamics 365 (online) können benutzerdefinierte Workflowaktivitäten nur zur Ausführung im Sandkasten (mit teilweiser Vertrauenswürdigkeit) registriert werden. Weitere Informationen zum Sandkasten und zu teilweiser Vertrauenswürdigkeit finden Sie unter Plug-In-Isolation, Vertrauensstellungen und Statistiken.

In diesem Thema

Erforderliche Software und Assemblys

Verwenden der CodeActivity-Workflowbasisklasse

Angeben des Namens und Gruppennamens für eine benutzerdefinierte Workflowaktivität

Erforderliche Software und Assemblys

Zum Entwickeln von Windows Workflow Foundation 4 benutzerdefinierte Aktivitäten für Dynamics 365 müssen Sie diese in Microsoft .NET Framework 4.5.2 entwickeln. Die folgenden Assemblys müssen als Verweise in Ihrem Projekt hinzugefügt werden. Sie finden sie im SDK\Bin-Ordner des Microsoft Dynamics 365 SDK.Laden Sie das Microsoft Dynamics CRM SDK-Paket herunter.

  • Microsoft.Xrm.Sdk.dll

  • Microsoft.Xrm.Sdk.Workflow.dll

Verwenden der CodeActivity-Workflowbasisklasse

Wenn Sie eine benutzerdefinierte Workflowaktivität erstellen möchten, erstellen Sie eine Klasse, die von der CodeActivity-Workflowbasisklasse erbt. Diese Klasse ist im System.Activities-Namespace verfügbar. Aktivitäten, die der von CodeActivity-Klasse erben, können die Execute-Methode überschreiben, um angepasste Funktionen zu produzieren.

  1. Starten Sie Microsoft Visual Studio.

  2. Klicken Sie im Menü Datei auf Neu und dann auf Projekt.

  3. Wählen Sie im Dialogfeld Neues Projekt die Option Workflow unter Visual C# im Bereich Installierte Vorlagen aus, und wählen Sie dann Aktivitätsbibliothek aus.

  4. Geben Sie einen Namen und einen Speicherort für die Lösung ein, und klicken Sie dann auf OK.

  5. Navigieren Sie zum Menü Projekt und wählen Sie Eigenschaften aus. Geben Sie auf der Registerkarte Anwendung als Zielframework .NET Framework 4.5.2 an.

  6. Fügen Sie Verweise zu den Microsoft.Xrm.Sdk.dll- und Microsoft.Xrm.Workflow.dll-Assemblys hinzu.

  7. Löschen Sie die Activity1.xaml-Datei im Projekt.

  8. Fügen Sie eine Klassendatei (.cs) zum Projekt hinzu. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt, wählen Sie Hinzufügen aus, und klicken Sie dann auf Klasse. Geben Sie im Dialogfeld Neues Element hinzufügen einen Namen für die Klasse ein, und klicken Sie dann auf Hinzufügen.

  9. Öffnen Sie die Klassendatei und fügen Sie die folgenden Verwendungsanweisungen hinzu:

    using System.Activities;using Microsoft.Xrm.Sdk;using Microsoft.Xrm.Sdk.Workflow;
    
  10. Legen Sie fest, dass die Klasse von der CodeActivity-Klasse erbt und weisen Sie ihr einen öffentlichen Zugriffs-Modifizierer wie nachfolgend gezeigt zu:

    public class SampleCustomActivity : CodeActivity
    
  11. Fügen Sie der Klasse Funktionen hinzu, indem Sie eine Ausführen-Methode hinzufügen:

    protected override void Execute(CodeActivityContext context){    //Activity code}
    

    Weitere Informationen finden Sie unter Einer benutzerdefinierten Workflowaktivität Metadaten hinzufügen.

  12. Geben Sie Ein- und Ausgabeparameter an. Weitere Informationen finden Sie unter Einer benutzerdefinierten Workflowaktivität Metadaten hinzufügen.

  13. Wählen Sie in den Projekteigenschaften unter der Registerkarte Signierung die Option Assembly signieren aus und geben Sie einen Schlüsseldateinamen an. Die benutzerdefinierten Workflowaktivitäts- (und Plug-In)-Assemblys müssen signiert sein.

  14. Kompilieren Sie das Projekt, um eine Assembly (.dll) zu erstellen.

Um ein Codebeispiel anzuzeigen, das veranschaulicht, wie eine benutzerdefinierte Workflowaktivität erstellt wird, vgl. Beispiel: Eine benutzerdefinierte Workflowaktivität erstellen.

Wichtig

Zur Verbesserung der Leistung werden benutzerdefinierte Workflowaktivitätsinstanzen von Microsoft Dynamics 365 zwischengespeichert. Die Ausführen-Methode der benutzerdefinierten Workflowaktivität sollte so geschrieben werden, dass sie statuslos ist, da der Konstruktor nicht für jeden Aufruf der benutzerdefinierten Workflowaktivität verwendet wird. Außerdem könnten mehrere Systemthreads die benutzerdefinierte Workflowaktivität gleichzeitig ausführen. Alle Statusinformationen werden pro Aufruf im Kontext gespeichert, sodass es nicht empfohlen wird, globale Variablen oder Mitgliedsvariablen zu verwenden, um Daten von einem Aufruf zum nächsten zu übergeben.

Angeben des Namens und Gruppennamens für eine benutzerdefinierte Workflowaktivität

Wenn Sie eine benutzerdefinierte Workflowaktivitätsassembly registrieren, geben Sie den Namen und Gruppennamen an. Die Namenseigenschaft gibt den Namen der Workflowaktivität an. Die Gruppennamenseigenschaft gibt den Namen des Untermenüs an, das dem Hauptmenü im Microsoft Dynamics 365-Prozessdesigner hinzugefügt wurde. Diese Eigenschaften verknüpfen die benutzerdefinierte Workflowaktivität mit dem Microsoft Dynamics 365-Prozessdesigner, sodass der benutzerdefinierte Aktivitätsname auf der Benutzeroberfläche angezeigt wird.

Um den Namen und Gruppennamen für eine benutzerdefinierte Workflowaktivität anzugeben, verwenden Sie die PluginType.Name- und PluginType.WorkflowActivityGroupName-Attribute, wenn Sie die benutzerdefinierte Workflowaktivitätsassembly registrieren. Weitere Informationen zum Registrieren benutzerdefinierter Workflowaktivitäten finden Sie unter Registrieren und Verwenden einer benutzerdefinierten Workflowaktivitätsassembly. Wenn die PluginType.Name- und PluginType.WorkflowActivityGroupName-Attribute auf NULL festgelegt sind, wird die benutzerdefinierte Aktivität im Microsoft Dynamics 365-Workflowdesigner ausgeblendet und kann nur über die XAML-Workflows aufgerufen werden.

Wenn Sie das Plug-In-Registrierungstool verwenden, um die benutzerdefinierte Workflowaktivitätsassembly zu registrieren, können Sie die entsprechenden Werte in den Feldern Name und WorkflowActivityGroupName in der Region Bearbeitbar angeben. Weitere Informationen zum Verwenden des Plug-In-Registrierungstools finden Sie unter Exemplarische Vorgehensweise: Registrieren eines Plug-Ins mithilfe des Plug-In-Registrierungstools.

Gruppennamen und Namen beim Registrieren angeben

Nachdem diese benutzerdefinierte Workflowaktivität registriert wurde, können Sie sie im Microsoft Dynamics 365-Prozessdesigner für Workflows oder Dialogfelder verwenden. Weitere Informationen finden Sie unter Registrieren und Verwenden einer benutzerdefinierten Workflowaktivitätsassembly.

Siehe auch

Benutzerdefinierte Workflowaktivitäten (Workflowassemblys)
Einer benutzerdefinierten Workflowaktivität Metadaten hinzufügen
Verwenden des IOrganization-Webdiensts in einer benutzerdefinierten Workflowaktivität
Beispiel: Eine benutzerdefinierte Workflowaktivität erstellen
Beispiel: Azure-fähige benutzerdefinierte Workflowaktivität
Windows Workflow Foundation 4-basierte Aktivitätsklassen

Microsoft Dynamics 365

© 2017 Microsoft. Alle Rechte vorbehalten. Copyright