Freigeben über


Bewährte Methoden für Anpassungen

Befolgen Sie diese Best Practices, um Probleme mit Leistung, Benutzerfreundlichkeit und Supportfähigkeit mit Dynamics 365 Field Service zu vermeiden.

Benutzerdefinierte Felder in Formularen minimieren

Systemanpasser fügen Entitätsformularen benutzerdefinierte Felder hinzu, um branchen- und geschäftsspezifische Informationen zu erfassen, Geschäftsprozesse auszuführen und Informationen für Berichte zu sammeln. Zu viele benutzerdefinierte Felder in einem Formular können jedoch Leistungsprobleme verursachen.

Um diese Leistungsprobleme zu vermeiden:

  • Minimieren Sie die Anzahl der benutzerdefinierten Felder auf allen Formularen. Wenn das Arbeitsauftragsformular das am häufigsten verwendete Formular in der Field Service-App ist, empfiehlt es sich, mit diesem Formular zu beginnen.
  • Minimieren Sie die Anzahl der Suchtypfelder und Unterraster unter benutzerdefinierten Feldern.
  • Verschieben Sie benutzerdefinierte Felder (insbesondere Suchen und Unterrster) von der ersten Formularregisterkarte in andere Formularregisterkarten.
  • Blenden Sie weniger verwendete Felder standardmäßig in einem Formular aus.

Sofort einsatzbereite Webressourcen, Optionssätze, Sicherheitsrollen oder Workflows nicht ändern

Einsatzbereite Webressourcen, Optionssets, Sicherheitsrollen oder Workflows nicht ändern oder anpassen. Andernfalls kann es zu unbeabsichtigtem Systemverhalten kommen.

Organisationen, die diese Komponenten anpassen, treten Probleme in ihrer Umgebung möglicherweise nicht sofort auf. Änderungen, die Microsoft an den angepassten Standardkomponenten veröffentlicht, werden jedoch nicht auf die oberste Ebene dieser Komponenten angewendet. Stattdessen setzt die spezifische angepasste Ebene alle zukünftigen Änderungen außer Kraft, und diese Außerkraftsetzungen führen schließlich zu unvorhersehbaren Fehlern und unvorhersehbarem Verhalten.

Datumsfelder oder Systemstatus nicht ändern, bearbeiten oder löschen

Das Ändern, Bearbeiten oder Löschen von Datumsfeldern und -status kann die Geschäftslogik beeinträchtigen und zu Problemen mit Lösungs-Upgrades führen. Beispiele für Datumsfelder für Arbeitsaufträge sind Zeit von zugesagt und Zeit bis zugesagt. Beispiele für Statusfelder sind Systemstatus für den Arbeitsauftrag und Systemstatus für die Vereinbarung.

Vorgefertigte Felder aus Formularen nicht bearbeiten oder entfernen

Kunden bearbeiten sofort einsatzbereite Felder, um ihren Geschäftsanforderungen gerecht zu werden. Das Bearbeiten von vorgefertigten Feldern kann jedoch zu Fehlern führen, insbesondere wenn Prozesse von den Werten dieser Felder abhängen.

Um Fehler zu vermeiden:

  • Blenden Sie unerwünschte Felder in einem Formular aus.
  • Verschieben Sie unerwünschte Felder auf eine andere Formularregisterkarte.

Field Service verarbeitet beispielswiese den Wert des Feldes Geschätzte Ankunftszeit im Datensatz Buchbare Ressourcenbuchung, um anzugeben, wann ein Frontline-Mitarbeiter voraussichtlich vor Ort eintreffen wird. Wenn Ihre Organisation dieses Feld nicht benötigt, blenden Sie es im Formular aus, anstatt es zu entfernen.

Optionssatz (Auswahl)-Werte nicht bearbeiten

Das Bearbeiten von Optionssatz-Werten von Standard-Feldern kann Fehler verursachen, insbesondere wenn Prozesse von den Werten dieser Felder abhängen oder während Aktualisierungen.

Um Fehler zu vermeiden:

  • Bearbeiten Sie nur die Optionssatzbeschriftungen von vordefinierten Feldern. Bearbeiten Sie nie die Optionssatzwerte dieser Felder.
  • Entfernen Sie keine Optionssatz-Optionen.
  • Fügen Sie keine Optionssatz-Optionen hinzu.

Der Field Service-Arbeitsauftrag enthält beispielsweise standardmäßig das Feld Systemstatus. Dieses Feld ist ein Optionssatz (vom Typ Auswahl) und verfügt über Optionen wie Ungeplant, Geplant, In Bearbeitung, Abgeschlossen und Abgebrochen. Jede Option verfügt über eine Beschriftung une einen zugeordneten numerischen Wert. Systemadministratoren können die Beschriftungen von Optionssätzen bearbeiten (z. B. Ungeplant), sie können jedoch nicht den zugehörigen numerischen Wert bearbeiten, der der Beschriftung zugeordnet ist.

Verwenden Sie weniger benutzerdefinierte Skripts und folgen Sie Best Practices

Systemanpasser schreiben Skripte, normalerweise JavaScript-Webressourcen, um Geschäftslogik auszuführen. Benutzerdefinierte Skripts können jedoch bei Upgrades Leistungsprobleme, Fehler und Komplikationen verursachen.

Um diese Probleme zu vermeiden:

  • Minimieren Sie die Anzahl der Skripte, die beim Laden ausgeführt werden.
  • Schreiben Sie keine Skripte, die viele Daten aufrufen, und schreiben Sie keine Skripte, die dieselben Daten aufrufen.

In den folgenden Unterabschnitten werden bewährte Methoden beschrieben. Befolgen Sie außerdem die bewährten Methoden des Formularskripts unter Bewährte Methoden für die Entwicklung mit Dynamics 365 Customer Engagement.

Minimieren Sie die Anzahl der Netzwerkanforderungen und die im OnLoad-Ereignis angeforderte Datenmenge

Je mehr Netzwerkanforderungen während des Ladens eines Formulars gestellt werden und je mehr Daten von diesen Anforderungen heruntergeladen werden, desto länger dauert das Laden des Formulars. Fordern Sie nur die erforderliche Mindestdatenmenge an. Ziehen Sie außerdem in Betracht, die Daten nach Möglichkeit zwischenzuspeichern, um zu vermeiden, dass beim zukünftigen Laden von Formularen unnötig Daten angefordert werden.

Vermeiden Sie synchrone Netzwerkanforderungen

Synchrone Netzwerkanforderungen können zu langsamen Seitenladevorgängen und nicht reagierenden Formularen führen. Ersatzweise asynchrone Anfragen verwenden. Der folgende Blogpost stellt weitere Beispiele bereit: Laden Sie Ihre modellgesteuerten Apps auf, indem Sie von synchronen Anforderungen abweichen (Blogeintrag) Ziehen Sie außerdem in Erwägung, in jedem Szenario, in dem mehrere Netzwerkaufrufe für dieselbe Entität und denselben Datensatz erforderlich sind. Weitere Informationen über „async“ und „await“

Vermeiden Sie nicht benötigte JavaScript-Webressourcebibliotheken

Je mehr Skripte Sie einem Formular hinzufügen, um so länger dauert deren Download. Normalerweise werden Skripte in Ihrem Browser zwischengespeichert, nachdem sie zum ersten Mal geladen wurden. Die Leistung beim ersten Betrachten eines Formulars hinterlässt jedoch oft einen deutlichen Eindruck.

Vermeiden Sie es, alle Skripts im Onload-Ereignis zu laden

Wenn Sie über Code verfügen, der nur OnChange-Ereignisse für Spalten oder nur das OnSave-Ereignis unterstützt, müssen Sie sicherstellen Sie sicher, die Skriptbibliothek mit dem Ereignishandler für diese Ereignisse anstelle des OnLoad-Ereignisses festzulegen. Dadurch kann das Laden dieser Bibliotheken verschoben werden, und die Leistung steigt, wenn das Formular geladen wird.

Eingeklappte Registerkarten verwenden, um das Laden von Webressourcen zu verschieben

Webressourcen oder iFrame-Komponenten, die Abschnitten einer eingeklappbaren Registerkarte enthalten sind, werden bei eingeklappter Registerkarte nicht geladen. Sie werden nur geladen, wenn die Registerkarte erweitert wird. Wenn sich der Status der Registerkarte ändert, tritt das TabStateChange-Ereignis ein. Jeder Code, der erforderlich ist, um Webressourcen oder iFrames auf eingeklappten Registerkarten zu unterstützen, kann Ereignishandler für das TabStateChange-Ereignis verwenden, und den Code reduzieren, der andernfalls im OnLoad-Ereignis ausgeführt werden müsste.

Vermeiden Sie doppelte Netzwerkanforderungen im clientseitigen Code

Mehrere oder doppelte Netzwerkanforderungen können dazu führen, dass der Webbrowser blockiert und die Ladezeit des Formulars beeinträchtigt wird. Die Reduzierung der Anzahl der Anfragen kann die Leistung verbessern. Eine Alternative besteht darin, Netzwerkanforderungen zu konsolidieren und den Wert der Anforderungen zwischenzuspeichern. Berücksichtigen Sie außerdem asynchrone Netzwerkanforderungen, wie bereits erwähnt.

Vermeiden Sie die Verwendung von Rollen und systembenutzerspezifischen Aufrufen, wenn die relevanten Informationen in XRM-APIs verfügbar sind

Verwenden Sie XRM-APIs, um Netzwerkanforderungen zum Abrufen von Informationen zu Benutzerberechtigungen zu vermeiden. Erfahren Sie mehr darüber, wie Sie von synchronen Anforderungen abweichen. Vermeiden Sie außerdem Systembenutzeraufrufe, wenn die Informationen von XRM-APIs Ihren Anforderungen entsprechen.

Richten Sie Standard-Sichtbarkeitsoptionen ein

Vermeiden Sie im OnLoad-Ereignis die Verwendung von Skripten, die Formularelemente ausblenden. Legen Sie anstelle von Formularelementen, die möglicherweise ausgeblendet sind, die standardmäßigen Sichtbarkeitsoptionen so fest, dass die Elemente standardmäßig ausgeblendet sind, wenn das Formular geladen wird. Verwenden Sie dann Skripte im OnLoad-Ereignis, um die Formularelemente anzuzeigen, die sichtbar sein sollen.

Weitere Informationen erhalten Sie in den folgenden Ressourcen:

Lösungsüberprüfung für Ihre Skripte ausführen

Der Power Apps Lösungsprüfer ist ein nützliches Tool von Microsoft, das Power Apps Lösungen für Probleme prüft und Best Practices empfiehlt. Zu diesen Problemen gehören Probleme mit JavaScript, HTML, Plug-Ins und benutzerdefinierten Workflow-Aktivitäten.

Weitere Informationen erhalten Sie in den folgenden Ressourcen:

Verwenden Sie asynchrone Workflows anstelle von synchronen

Systemanpasser schreiben häufig synchrone Workflows, um in Echtzeit Geschäftslogik auszuführen, die ausgeführt wird, wenn Daten in Field Service geändert werden. Die synchrone Ausführung von Workflows beeinträchtigt jedoch die Leistung. Führen Sie stattdessen Workflows asynchron aus, um Leistungsprobleme zu vermeiden.

Aktivieren Sie die Out-of-the-Box-Prozesse von Field Service und Ressourcenplanung

Field Service und Ressourcenplanung enthalten viele Prozessen, die die notwendige Geschäftslogik ausführen. Deaktivierte Prozesse können zu Fehlern führen. Um Probleme zu vermeiden, stellen Sie sicher, dass sich alle Field Service- und Ressourcenplanungsprozesse in einem aktiven Zustand befinden. Führen Sie Field Service Lösungsintegritäts-Hub regelmäßig aus, um zu ermitteln, ob sich Prozesse in einem deaktivierten Zustand befinden.

Führen Sie den Lösungsintegritäts-Hub aus, um Probleme zu erkennen

Der Lösungsintegritätshub ermöglicht es Ihnen, sich einen besseren Überblick über den Zustand Ihrer Umgebung zu verschaffen und Probleme mit Ihrer Dynamics 365-Umgebung zu erkennen. Die Konfiguration einer Umgebung kann sich im Laufe der Zeit durch natürliche Systemvorgänge ändern. Der Lösungsintegritätshub führt Regeln innerhalb einer Instanz aus, um die Konfiguration der Umgebung zu überprüfen. Einige der Regeln sind spezifisch für Field Service und Sie können sie bei Bedarf ausführen, wenn Sie auf ein Problem stoßen. Einige Regeln werden automatisch ausgelöst, wenn der Field Service installiert oder aktualisiert wird.

Führen Sie den Regelsatz für den Lösungsintegritätshub regelmäßig aus, um den Zustand Ihrer Umgebung zu überwachen.

Überlegungen zur Leistung von mobile App

Das Anpassen der mobile App kann sich auf die Leistung auswirken. Weitere Informationen finden Sie unter Leistungsüberlegungen beim Anpassen der mobile App.