Verwenden von Plug-Ins zur Erweiterung von Geschäftsprozessen

Ein Plug-In ist ein benutzerdefinierter Ereignishandler, der als Reaktion auf ein bestimmtes Ereignis ausgeführt wird, das während der Verarbeitung eines Microsoft Dataverse-Datenvorgangs ausgelöst wurde. Das Plug-In wird als benutzerdefinierte Klasse implementiert, die in eine .NET Framework-Assembly kompiliert wird, die in Dataverse hochgeladen und registriert werden kann. In einer Assembly können für bestimmte Ereignisse (Schritte) im Dataverse Ereignisframwork eine oder mehrere kompilierte Plug-In-Klassen registriert werden. Wenn das Zielereignis während eines Datenverarbeitungsvorgangs auftritt, wird der Code innerhalb der registrierten Plug-In-Klasse ausgeführt und stellt ein Mittel bereit, um das standardmäßige Datenverarbeitungsverhalten der Plattform zu erweitern oder anzupassen.

Tipp

Wenn immer möglich, sollten Sie zunächst erwägen, eine von mehreren deklarativen Optionen zur Definition der Geschäftslogik anzuwenden. Weitere Informationen: Anwenden von Geschäftslogik in Dataverse

Verwenden Sie Plug-Ins, wenn ein deklarativer Prozess nicht Ihre Bedingung erfüllt.

Weitere Details zu Plug-Ins

Alle Klassen in einer Assembly, die in einem Ereignisframeworkschritt (Pipeline) registriert werden sollen, müssen die IPlugin-Schnittstelle implementieren. Diese Schnittstelle unterstützt eine einzelne Methode namens Execute. Wenn ein Ereignis eintritt, für das eine kompilierte Klasse registriert ist, werden kontextbezogene Daten über den verarbeiteten Datenvorgang an die Execute-Methode des Plug-Ins übergeben. Innerhalb der Execute-Methode kann Ihr benutzerdefinierter Code:

  • Den aktuellen Datenverarbeitungspipeline-Vorgang abbrechen und dem Benutzer optional eine Fehlermeldung anzeigen
  • Änderungen an den Geschäftsdaten vornehmen, die im aktuellen Pipelinevorgang verarbeitet werden
  • Andere Datenvorgänge aufrufen
  • Eine Verbindung mit externen Systemen herstellen
  • Informationen an ein anderes „Downstream“-Plug-In übergeben, das in derselben Pipeline registriert ist
  • Mehr …

Plug-Ins können so registriert werden, dass sie synchron oder asynchron ausgeführt werden. Ein synchrones Plug-In bewirkt, dass der Datenvorgang wartet, bis der Code im Plug-In abgeschlossen ist. Diese Verzögerung wirkt sich auf die vom Endbenutzenden wahrgenommene Leistung des Systems aus, weshalb synchrone Plug-Ins schnell ausgeführt und abgeschlossen werden müssen. Die Ausführung asynchroner Plug-Ins wird in die Warteschlange gestellt und später nach Abschluss des Datenvorgangs erledigt.

Verwenden von Plug-Ins

Personen vergleichen häufig benutzerdefinierte Workflowktivitäten und Plug-Ins als Auswahlmöglichkeiten für die Anwendung benutzerdefinierter Geschäftslogik. Die Funktionen von Workflowaktivitäten und Plug-Ins überschneiden sich erheblich. Plug-Ins können alle Funktionen ausführen, die Workflowaktivitäten ausführen. Das Gegenteil ist jedoch nicht der Fall. Diese Tatsache bedeutet jedoch nicht, dass Sie Plug-Ins für alles verwenden sollten, was mit einem Workflow ausgeführt werden kann. Es stehen weitere Funktionen zum Erfüllen von Anforderungen zur Verfüguing, ohne Plug-Ins zu verwenden.

  • Workflows können benutzerdefinierte Workflowaktivitäten verwenden, mit denen Sie wiederverwendbare Bedingungen und Aktionen mit Code erstellen können, die in mehreren Workflows verwendet werden können.

  • Berechnete Felder und Rollupfelder bieten Funktionen, die bisher nur mit Workflows ausgeführt werden konnten.

  • Benutzerdefinierte Aktionen sind ein Prozesstyp, der mit Workflows vergleichbar ist und ermöglichen die Erstellung von wiederverwendbaren Meldungen, die von anderen Workflows oder von Webdienstendpunkten aufgerufen werden können.

  • Azure Service Bus-Integration und Webhooks können verwendet werden, um Daten an externe Systeme zu pushen, wo die Logik mit vielen verschiedenen Ressourcen angewendet werden kann.

  • Power Automate bietet viele Funktionen, die bisher mithilfe von Plug-Ins ausgeführt wurden.

Sie müssen jede dieser Optionen auswerten, um die beste Methode zum Erfüllen Ihrer Bedingungen zu verstehen.

Vorteile von Plug-Ins

Dies sind die Hauptvorteile von Plug-Ins:

  • Plug-Ins erbringen eine gute Leistung. Ein gut geschriebenes Plug-In bietet die leistungsstärkste Möglichkeit, benutzerdefinierte Geschäftslogik anzuwenden.
  • Plug-Ins sind leistungsstark. Viele Entwicklungsfachkräfte würden ihre Fähigkeiten und ihr Wissen lieber nutzen, um Logik zu definieren, und die Fähigkeiten nutzen, um direkt mit dem Dataverse-Webdienst oder mit externen Services in Code zu arbeiten. Ein erfahrener Plug-In-Entwickler kann überaus produktiv sein.
  • Wenn keine sofort einsatzbereite Geschäftslösung vorhanden ist, erweitern Plug-Ins die Möglichkeiten von Dataverse.

Nachteile von Plug-Ins

  • Für das Erstellen und die Pflege des Plug-In-Codes benötigen Plug-Ins die besonderen Qualifikationen eines Softwareentwicklers. Kleinere Unternehmen steht womöglich kein Entwickler mit den erforderlichen Fähigkeiten zur Verfügung. Geschäftsprozesse können sich schnell ändern und durch Bereitstellen von Optionen, die eine Änderung ermöglichen, ohne einen Entwickler zu erfordern, ist es dem System möglich, sich schneller anzupassen.
  • Plug-Ins können missbräuchlich verwendet werden. Ein schlecht geschriebenes Plug-In kann erhebliche Auswirkungen auf die wahrgenommene Leistung der Datenverarbeitungspipeline und letztendlich auf die interaktive Umgebung des Endbenutzenden haben. Angesichts der erheblichen Wirkung von Plug-Ins müssen sie mit einer gewissen Zurückhaltung eingesetzt und dabei die Folgen für das System als Ganzes berücksichtigt werden.
  • Plug-Ins haben nur eine kurze Zeitspanne (eine feste Grenze), um ihre Arbeit abzuschließen.

Nächste Schritte

Verwenden Sie das folgende Tutorial und die folgenden Themen, um mehr über die Verwendung von Plug-Ins zu lernen

Lernprogramme

Diese Themen erklären Ihnen den grundlegenden Prozess des Erstellens, Registrierens und Debuggens einfacher Plug-Ins.

Vorgehensweisen

Diese Themen enthalten zusätzliche Details, die für die Plug-In-Entwicklung von Belang sind.

Nachdem Sie die oben aufgeführten Plug-In-Konzepte gelesen und verstanden haben, sollten Sie diese zusätzlichen mit Plug-Ins zusammenhängenden Funktionen und Technologien besser kennenlernen.

Hinweis

Können Sie uns Ihre Präferenzen für die Dokumentationssprache mitteilen? Nehmen Sie an einer kurzen Umfrage teil. (Beachten Sie, dass diese Umfrage auf Englisch ist.)

Die Umfrage dauert etwa sieben Minuten. Es werden keine personenbezogenen Daten erhoben. (Datenschutzbestimmungen).