Freigeben über


Skripts schreiben, um eine komplexe Geschäftslogik zu implementieren

Einige Implementierungen von Dynamics 365 Field Service umfassen Funktionen und komplexe Geschäftslogik, die über die Prozesse hinausgehen, die Field Service standardmäßig bietet. Manchmal gehen diese Komplexitäten sogar über die Plattformoptionen hinaus, wie z. B. Workflows und Geschäftsregeln. Für komplexe Anforderungen können Entwickler benutzerdefinierte Codes erstellen.

Die Implementierung komplexer Geschäftslogik erfordert normalerweise das Schreiben von Plugins auf der Serverseite und JavaScript-Webressourcen auf der Client-Seite.

In diesem Artikel werden diese Best Practices untersucht:

  • Informieren Sie sich über die vorhandenen Prozesse und Funktionen des Außendienstes, bevor Sie Skripts schreiben.
  • Vermeiden Sie nach Möglichkeit das Schreiben von Skripten. Versuchen Sie zunächst, stattdessen Plattformoptionen wie Power Automate und Workflows zu verwenden.
  • Führen Sie Skripts asynchron statt synchron aus.
  • Vermeiden Sie das Laden von Skripts, wenn ein Formular geladen wird. Laden Sie sie stattdessen nur, wenn sie benötigt werden.
  • Führen Sie die Lösungsüberprüfung für Ihre Skripte aus.
  • Bearbeiten oder löschen Sie keine vorhandenen Formularbibliotheken.

Typen von Skripts

Plug-Ins

Mithilfe von Plug-Ins können Sie auf der ereignisgesteuerten Dynamics 365-Plattform von Microsoft Ihre eigenen benutzerdefinierten Funktionen für nahezu jeden erdenklichen Prozess schreiben. Plugins fungieren als Ereignishandler und werden für die Ausführung bei einem bestimmten Ereignis in Dynamics 365 registriert. Plugins werden entweder in C# oder Visual Basic geschrieben und können entweder im synchronen oder im asynchronen Modus ausgeführt werden.

Benutzerdefinierte Plugins können helfen:

  • Führen Sie eine Geschäftslogik aus, z. B. das Aktualisieren bestimmter Felder eines Datensatzes oder das Aktualisieren zugehöriger Datensätze, wenn Sie einen Dynamics 365-Datensatz erstellen oder aktualisieren.
  • Rufen Sie bei bestimmten Ereignissen einen externen Webdienst auf, z. B. wenn ein Datensatz gespeichert oder aktualisiert wird.
  • Berechnen Sie Feldwerte dynamisch, wenn ein beliebiger Datensatz geöffnet wird.
  • Automatisieren Sie Prozesse, wie etwa das Senden von E-Mails an Ihre Kunden zu bestimmten Ereignissen in Dynamics 365.

JavaScript-Webressourcen

JavaScript bietet eine Möglichkeit, benutzerdefinierte Geschäftsprozesslogik anzuwenden, um Daten in einem Formular in Dynamics 365 anzuzeigen. Im Kontext von Field Service könnten Entwickler den Arbeitsaufträgen und Buchungsformularen JavaScript hinzufügen, um die Geschäftslogik durchzusetzen. Sie könnten der Zeitplanübersicht auch JavaScript hinzufügen, um Buchungsregeln zu erstellen, die Validierungen durchführen, wenn eine Buchung in der Zeitplanübersicht erstellt wird.

Schritt 1. Verstehen Sie die Risiken beim Schreiben benutzerdefinierter Skripts

Gehen Sie vorsichtig vor, wenn Sie Ihrer Field Service-Implementierung Plug-Ins und JavaScript hinzufügen. Zu viele und schlecht geschriebene Skripte sind die Hauptursache für schlechte Leistung und Fehler. Schreiben Sie Skripte nur, wenn die Anpassung für die Ausführung Ihres Field Service-Vorgangs von entscheidender Bedeutung ist.

Lesen Sie diesen Artikel und die zugehörigen Inhalte gründlich durch, bevor, während und nachdem Sie Skripts schreiben und implementieren.

Schritt 2. Prüfen Sie, ob Field Service oder Dynamics 365 die Anforderung erfüllen können

Bevor Sie ein Plug-In oder eine JavaScript-Webressource schreiben, prüfen Sie unbedingt, ob Field Service oder eine andere Dynamics 365-App dieselbe oder eine ähnliche Funktion ausführen kann. Doppelte Prozesse können Fehler und Leistungsprobleme verursachen.

Schritt 3. Versuchen Sie es zunächst mit Plattformoptionen

Bevor Sie ein benutzerdefiniertes Skript schreiben, versuchen Sie, Ihre Anforderungen mithilfe von Plattformoptionen wie Power Automate, Workflows und Geschäftsregeln zu erfüllen.

Wenn Sie Ihre Anforderungen nicht durch die Verwendung von Plattformoptionen erfüllen können, entscheiden Sie, ob ein Workflow nahe genug herankommt, um Ihrem Unternehmen zu helfen. Die Plattformoptionen sind besser skalierbar, lassen sich besser unterstützen, brechen bei Upgrades seltener ab und bieten eine bessere Leistung.

Weitere Informationen zur Verwendung von Plattformoptionen finden Sie unter Wann sollten Plug-Ins und wann Workflows verwendet werden?

Schritt 4. Überprüfen Sie Best Practices, bevor Sie Plugins oder Skripte schreiben

Viele Best Practices wurden aus der Erfahrung mit Entwicklern in Tausenden von Dynamics 365-Implementierungen entwickelt. Sehen Sie sich die folgenden Best Practices an, bevor und während Sie Plug-Ins oder Skripts schreiben:

Schritt 5. Verwenden Sie Tools zum Testen Ihrer Skripte

Nachdem Sie Skripte geschrieben haben, müssen Sie sie testen.

Verwenden Sie zunächst den Lösungsprüfer, um Ihre modellgesteuerten Apps in Power Apps zu validieren. Der Lösungsprüfer ermittelt, ob die Skripts gegen Best Practices verstoßen, z. B. dass sie synchron statt asynchron ausgeführt werden.

Als nächstes verwenden Sie den Plugin-Profiler, um Probleme zu beheben.

Formularbibliotheken

Viele Field Service-Datensatztypen, z. B. Arbeitsaufträge (siehe folgende Abbildung), verfügen über JavaScript-Formularbibliotheken, die standardmäßig in Field Service enthalten sind. Diese Bibliotheken führen wichtige Prozesse aus.

Wichtig

Bearbeiten oder löschen Sie keine vorhandenen Formularbibliotheken.

Screenshot, der Formularbibliotheken für das Formular Arbeitsauftrag in Power Apps zeigt.

JavaScript auf der Zeitplantafel (Buchungsregeln)

Buchungsregeln bieten eine Möglichkeit, mithilfe von JavaScript Validierungen für Zeitplanübersicht durchzuführen. Gehen Sie jedoch, wie auch bei der Verwendung von JavaScript in anderen Formularen, z. B. Arbeitsaufträgen, vorsichtig vor. Erstellen Sie nicht mehr als eine Buchungsregel. Erwägen Sie stattdessen die Verwendung von Buchungsbenachrichtigungen , um die Disponenten auf Probleme aufmerksam zu machen.