Freigeben über


Ausführungskontext (clientseitige Referenz)

 

Veröffentlicht: Januar 2017

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

Der Ausführungskontext optionaler parameter, der an eine JavaScript-Bibliotheksfunktion durch einen Ereignishandler übergeben werden kann. Diese Option wird im Handlereigenschaftendialogfeld dargestellt, wenn Sie den Namen der Funktion angeben. Diese Option wird für ein <Handler> (FormXml)-Element mithilfe des passExecutionContext-Attributs festgelegt.

Der Ausführungskontext wird automatisch an Funktionen übergeben, die die Xrm.Page.data.fbaf2e7a-db2f-448f-bd24-6b3ca1ccb28e#BKMK_addOnSave und Xrm.Page.data.entityAttribute.6881e99b-45e4-4552-8355-2eef296f2cd8#BKMK_addOnChange, und Xrm.Page.uiControl.51828fe3-f6ff-4f97-80ed-b06b3a354955#BKMK_addPreSearch Methode verwenden.

Ausführungskontextmethoden

  • getContext
    Methode, die das Clientseitiger Kontext (clientseitige Referenz)-Objekt zurückgibt.

  • getDepth
    Methode, die einen Wert zurückgibt, der die Reihenfolge angibt, in der dieser Handler ausgeführt wird.

  • getEventArgs
    Methode, die ein Objekt mit Möglichkeiten zurückgibt, das Save-Ereignis zu verwalten.

  • getEventSource
    methode, die einen Verweis auf das Objekt zurückgibt, auf dem das Ereignis aufgetreten ist.

  • getFormContext
    Eine Methode, die einen Verweis auf ein Formular oder ein bearbeitbares Raster zurückgibt, für das die Methode aufgerufen wurde.

  • Freigegebene Variablen
    Freigegebene Variablen erlauben die Freigabe einer Variablen für andere Handler für dasselbe Ereignis. Verwenden Sie die setSharedVariable- und getSharedVariable-Methode, um mit veröffentlichten Variablen zu arbeiten.

getContext

Methode, die das Clientseitiger Kontext (clientseitige Referenz)-Objekt zurückgibt

ExecutionContextObj.getContext()
  • Rückgabewert
    Typ:Objekt

getDepth

Methode, die einen Wert zurückgibt, der die Reihenfolge angibt, in der dieser Handler ausgeführt wird.

  • Rückgabewert
    Typ: Anzahl

    Die Reifenfolge beginnt bei 0.

getEventArgs

Methode, die ein Objekt mit Möglichkeiten zurückgibt, das Save-Ereignis zu verwalten.

Hinweis

Diese Methode gibt Null für Ereignisse zurück, die keine Save Ereignisse sind.

ExecutionContextObj.getEventArgs()

getEventSource

methode, die einen Verweis auf das Objekt zurückgibt, auf dem das Ereignis aufgetreten ist.

ExecutionContextObj.getEventSource()
  • Rückgabewert
    Typ:Objekt

    Diese Methode gibt das Objekt vom Xrm.Page-Objektmodell zurück, das die Ursache des Ereignisses ist, nicht ein HTML DOM-Objekt. Beispielsweise gibt diese Methode in einem OnChange-Ereignis das Xrm.Page.data.entity-Attributobjekt zurück, das das geänderte Attribut darstellt.

getFormContext

Eine Methode, die einen Verweis auf das Formular (Xrm.Page) oder ein bearbeitbares Raster zurückgibt, für das die Methode aufgerufen wurde.

ExecutionContextObj.getFormContext()
  • Rückgabewert
    Typ:Objekt

    Diese Methode gibt einen Verweis auf das Objekt aus dem Xrm.Page-Objektmodell oder das dabc9332-54f3-4b1e-ac98-a3c5a4641b0c#BKMK_GridRow-Objekt in einem bearbeitbaren Raster zurück, für das die Methode aufgerufen wurde. Diese Methode ermöglicht die Erstellung von gemeinsamen Ereignishandlern, die entweder für ein Formular oder ein bearbeitbares Raster arbeiten, für das sie aufgerufen wurden.

    Weitere Informationen: Verwenden des Xrm.Page-Objektmodells und Bearbeitbare Rasterobjekte und Methoden (clientseitige Referenz)

    Hinweis

    Diese Methode wurde in Update für Dynamics 365 (online und lokal), Dezember 2016 eingeführt.

  • Beispiel
    Der folgende Beispielcode veranschaulicht, wie Sie eine Methode erstellen, die eine Benachrichtigung für ein Formularfeld oder eine bearbeitbare Rasterzelle festlegt, für die Sie das Skript registrierten (d88d5f21-6385-443b-91f2-0ec0c16b1324#BKMK_FieldOnChangeEvent oder bearbeitbares Raster-dabc9332-54f3-4b1e-ac98-a3c5a4641b0c#BKMK_OnChange-Ereignis):

    function commonEventHandler(executionContext) {
        var entityObject = executionContext.getFormContext().data.entity;
        var telephoneAttr = entityObject.attributes.getByName('telephone1');
        var isNumberWithCountryCode = telephoneAttr.getValue().substring(0,1) === '+';
    
        // telephoneField will be an Xrm.Page control if invoked from a form OnChange event;
        // telephoneField will be a editable grid GridCell object if invoked from editable grid OnChange event.
        var telephoneField = telephoneAttr.controls.getByIndex(0);
    
        if (!isNumberWithCountryCode) {
            telephoneField.setNotification('Please include the country code beginning with ‘+’.', 'countryCodeNotification');
        }
        else {
            telephoneField.clearNotification('countryCodeNotification');
        }
    }
    

Freigegebene Variablen

Freigegebene Variablen erlauben die Freigabe einer Variablen für andere Handler für dasselbe Ereignis. Verwenden Sie die Methoden setSharedVariable und getSharedVariable, um eine Variablen zwischen Funktionen zu übergeben.

setSharedVariable

Legt den Wert für eine Variable fest, die von einem Handler verwendet werden kann, nachdem der aktuelle Handler seine Ausführung beendet.

ExecutionContextObj.setSharedVariable(key, value)
  • Argumente
    String: Der Name der Variablen

    Object: Der einzustellende Wert.

getSharedVariable

Ruft eine Variable ab, die mithilfe von setSharedVariable festgelegt wurde.

ExecutionContextObj.getSharedVariable(key)
  • Argumente
    String: Der Name der Variablen.

  • Rückgabewert
    Typ:Objekt

    Der verfügbare Typ hängt davon ab, was das Wertobjekt ist.

Siehe auch

Cclientseitige Programmierreferenz

Microsoft Dynamics 365

© 2017 Microsoft. Alle Rechte vorbehalten. Copyright