Freigeben über


Formularereignisse (clíentseitige Referenz)

 

Veröffentlicht: November 2016

Gilt für: Dynamics CRM 2015

Clientseitiger Code wird durch Ereignisse initiiert. Im Microsoft Dynamics 365 ordnen Sie spezielle Funktion innerhalb einer JavaScript-Bibliothek zu, damit sie ausgeführt werden, wenn bestimmte Ereignisse auftreten.

Alle Formularereignisse haben eine Benutzeroberfläche, die Sie verwenden, um ein oder mehrere Ereignishander anzugeben. Jeder Ereignishandler gibt eine Funktion innerhalb einer einzelnen JavaScript-Bibliothek und alle Parameter an, die an die Funktion übergeben werden können.

Ereignisse

OnLoad-Ereignis

OnSave-Ereignis

Feld-OnChange-Ereignis

Registerkarte TabStateChange-Ereignis

IFRAME OnReadyStateComplete-Ereignis

Nachschlagesteuerungs-PreSearch-Ereignis

OnStageChange-Ereignis

OnStageSelected-Ereignis

Parature-Wissensdatenbank-Suchsteuerelementereignisse

Unterraster-OnLoad-Ereignis

OnLoad-Ereignis

Das OnLoad-Ereignis tritt auf, nachdem das Formular geladen wurde. Es kann nicht das Fenster nicht am Laden hindern. Verwenden Sie das OnLoad-Ereignis, um Logik dazu anzuwenden, wie das Formular angezeigt werden soll, um Eigenschaften auf Feldern festzulegen mit anderen Seitenelementen zu interagieren.

Wenn der Microsoft Dynamics CRM für Tablets-Client getrennt ist, ist das OnLoad-Ereignis das einzige Ereignis, das auftritt.

Hinweis

Formulare für Aktualisierte Entitäten laden die Seite nicht erneut nach der ersten Speicherung bei der Erstellung eines Datensatzes oder nachfolgenden Änderungen herunter. Daher tritt das OnLoad-Ereignis nur während des erstmaligen Ladens des Formulars auf.

OnSave-Ereignis

Das OnSave-Ereignis tritt auf, wenn Folgendes zutrifft:

  • Der Benutzer klickt auf die Schaltfläche Schaltfläche "Automatisches Speichern" in der unteren rechten Ecke des Formulars, selbst wenn keine geänderten Daten gespeichert werden müssen.

  • Code führt die Xrm.Page.data.entity.Speichern-Methode aus, selbst wenn keine geänderten Daten gespeichert werden müssen.

  • Der Benutzer navigiert von dem Formular weg, und es befinden sich nicht gespeicherte Daten im Formular.

  • Bei aktivierter automatischer Speicherung 30 Sekunden nach der Änderung der Daten, wenn sich im Formular nicht gespeicherte Daten befinden.

  • Code führt die Xrm.Page.data.Speichern-Methode aus, und es befinden sich nicht gespeicherte Daten in dem Formular.

  • Code führt die Xrm.Page.data.refresh-Methode durch, wobei der Wert "True" als erster Parameter übergeben wird und sich nicht gespeicherte Daten in dem Formular befinden.

Um festzustellen auf welche Schaltfläche geklickt wurde, um das Speichern auszuführen, verwenden Sie die getSaveMode-Methode.

Sie können die Speicheraktion abbrechen, indem Sie die preventDefault-Methode im Ereignisargumentobjekt bereitstellen. Die preventDefault-Methode, die verfügbar ist, indem Sie die 279ca720-e304-4e51-b99f-91722431c2c8#BKMK_GetEventArgs-Methode anwenden, die Teil des Ausführungskontexts ist. Sie müssen Sie den Formularereignishandler konfigurieren, damit Ausführungskontext übergeben wird. Weitere Informationen finden Sie unter Verwenden von Ausführungskontext und der Formularereignispipeline.

Feld-OnChange-Ereignis

Das OnChange-Ereignis tritt in der Regel auf, wenn die Daten in einem Formularfeld geändert wurde und Fokus verloren wurde.

Hinweis

Es gibt eine Ausnahme zu diesem Verhalten, die für Zwei-Option Felder (boolesche Felder) gelten, die so formatiert sind, dass Optionsfelder oder Kontrollkästchen verwendet werden. In einem solchen Fall tritt das Ereignis sofort auf.

Dieses Ereignis tritt auch auf, wenn Daten auf dem Server abgerufen werden, um ein Feld zu aktualiseren, wenn das Formular aktualisiert wird, z. B. nachdem ein Datensatz gespeichert wird.

Die Verwendung der Xrm.Page.data.entity attribute fireOnChange-Methode führt ebenfalls dazu, dass dieses Ereignis auftritt.

Das OnChange-Ereignis tritt nicht auf, wenn das Feld programmgesteuert mithilfe der setValue-Methode geändert wird. Wenn Sie Ereignishandler für das Ereignis OnChange nach dem Einstellen des Werts ausführen möchten, müssen Sie die Xrm.Page.data.entity attribute.fireOnChange-Methode in Ihrem Code verwenden.

Alle Felder unterstützen das OnChange-Ereignis. Daten im Feld werden vor und nach dem OnChange-Ereignis überprüft.

Hinweis

Obwohl das Status-Feld des OnChange-Ereignis unterstützt, ist das Feld schreibgeschützt, sodass das Ereignis nicht nach Benutzerinteraktion auftreten kann. Ein anderes Skript kann dazu führen, dass dieses Ereignis eintritt, indem die fireOnChange im Feld verwendet wird.

Registerkarte TabStateChange-Ereignis

Das TabStateChange-Ereignis tritt auf, wenn der DisplayState-Parameter aufgrund einer Benutzerinteraktion sich ändert, oder wenn die setDisplayState-Methode in Code angewendet wird. Verwenden Sie, wenn Sie die src-Eigenschaft eines IFRAMEs in der Registerkarte ändern möchten.

Dieses Ereignis tritt in CRM für Tablets nicht auf, da Registerkarten nicht erweitert oder reduziert werden.

Hinweis

Wenn Sie die IFrame.src-Eigenschaft im OnLoad-Ereignis für einen IFRAME in einer reduzierten Registerkarte festlegen, wird der Wert überschrieben, wenn die Registerkarte erweitert wird.

IFRAME OnReadyStateComplete-Ereignis

Das OnReadyStateComplete-Ereignis gibt an, dass der Inhalt des IFRAMEs geladen wurde und im Code darauf zugegriffen werden kann. Verwenden Sie dieses Ereignis, wenn Sie auf IFRAME-Kontrollen in Ihren Skripts verweisen.

Dieses Ereignis tritt nicht in CRM für Tablets auf, da IFRAMES nicht unterstützt werden.

Nachschlagesteuerungs-PreSearch-Ereignis

Die Nachschlagesteuerung hat ein PreSearch-Ereignis, das auftritt, kurz bevor das Steuerelement ein Dialogfeld startet, um Datensätze zu suchen. Es gibt keine UI, um für dieses Ereignis Ereignishandler festzulegen. Sie müssen die addPreSearch- und removePreSearch-Methode im Nachschlagesteuerelement verwenden, um von Ereignishandler für das Ereignis hinzuzufügen oder zu entfernen.

Verwenden Sie dieses Ereignis mit anderen Suchsteuerelementmethoden und -ereignisse, um die Ergebnisse zu ändern, die in einer Suche nach dem auf Basis der Formulardaten angezeigt werden, die aktuell waren, kurz bevor das Nachschlagesteuerelement Suchergebnisse anzeigt, damit der Benutzer eines auswählt.

OnStageChange-Ereignis

Dieses Ereignis tritt auf, wenn die Geschäftsprozessflusssteuerung geändert wird. Dieses Ereignis tritt auf, wenn der Benutzer auf die Schaltflächen Nächste Phase oder Zurück zur vorherigen Phase auf der Benutzeroberfläche klickt, oder wenn ein Entwickler die Xrm.Page.data.process-,.moveNext-, Xrm.Page.data.process- oder movePrevious-Methode verwendet. Sie können die Phasenänderung nicht mithilfe von Code in einem Handler für dieses Ereignis abbrechen.

Ein Ausführungskontextobjekt wird an den Ereignishandlern für dieses Ereignis übergeben. Sie können die getEventArgs-Funktion verwenden, um ein Objekt abzurufen, das über die folgenden Methoden verfügt:

  • getDirection
    Gibt eine Zeichenfolge zurück, die entweder "next" oder "previous" ist, um die Richtung der Phasenänderung anzuzeigen.

  • getStage
    Gibt ein Phasenobjekt zurück. Ausßer wenn die Navigation zu einer neuen Entität weitergeht, repräsentiert die zurückgegebene Phase das Zielphasenobjekt, d. h. die nächste aktive Phase. Wenn die Navigation zu einer neuen Entität weitergeht, ist die Phase die Phase, vob der navigiert wird, d. h. das vorige aktive Phasenobjekt.Weitere Informationen:Stage methods.

Verwenden Sie die Xrm.Page.data.process.addOnStageChange-Methode zum Hinzufügen von Ereignishandlern für diese Methode, und die Xrm.Page.data.process-, removeOnStageChange-Methode, um diese zu entfernen.Weitere Informationen:Schreiben von Skripts für Geschäftsprozessflüsse.

OnStageSelected-Ereignis

Dieses Ereignis tritt auf, wenn die Geschäftsprozessflusssteuerung ausgewählt wird. Sie können die Phasenauswahl nicht mithilfe von Code in einem Handler für dieses Ereignis abbrechen.

Ein Ausführungskontextobjekt wird an den Ereignishandlern für dieses Ereignis übergeben. Sie können die getEventArgs-Funktion verwenden, um ein Objekt abzurufen, das über die folgenden Methoden verfügt:

  • getStage
    Gibt ein Phasenobjekt zurück, das die ausgewählte Phase darstellt.Weitere Informationen:Stage methods.

Verwenden Sie die Xrm.Page.data.process.addOnStageSelected-Methode zum Hinzufügen von Ereignishandlern für diese Methode, und die Xrm.Page.data.process-, removeOnStageSelected-Methode, um diese zu entfernen.Weitere Informationen:Schreiben von Skripts für Geschäftsprozessflüsse.

Parature-Wissensdatenbank-Suchsteuerelementereignisse

Mit Microsoft Dynamics CRM Online 2015-Update 1 wurde ein neues Suchsteuerelement für die Wissensdatenbank eingeführt, das nur zu Formularen für Organisationen hinzugefügt werden kann, die in Parature integriert sind. Dieses Steuerelement hat zwei Ereignisse (OnResultOpened und OnSelection), denen Entwickler programmgesteuert Ereignishandler zuweisen können.Weitere Informationen:Parature: Suchsteuerelement für die Wissensdatenbank (clientseitige Referenz)

Unterraster-OnLoad-Ereignis

Mit CRM Online 2015-Update 1 können Sie Ereignishandler zum OnLoad-Ereignis von OnLoad Unterrastenr anfügen.Weitere Informationen:Schreiben von Skripts für Unterraster

Siehe auch

Kurzübersicht zum Formularskripting
Schreiben von Code für Microsoft Dynamics CRM 2015-Formulare
Verwenden des Xrm.Page-Objektmodells
Cclientseitige Programmierreferenz
Schreiben von Skripts für Geschäftsprozessflüsse

© 2017 Microsoft. Alle Rechte vorbehalten. Copyright