Delen via


Uitvoeringscontext (clientreferentie)

 

Gepubliceerd: januari 2017

Is van toepassing op: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online

De uitvoeringscontext is een optionele parameter die kan worden doorgegeven aan een JavaScript-bibliotheekfunctie via een gebeurtenishandler. Deze optie wordt weergegeven in het dialoogvenster met handlereigenschappen als u de naam van de functie opgeeft. Deze optie is ingesteld voor een <Handler> (FormXml)-element dat gebruikmaakt van het kenmerk passExecutionContext.

De uitvoeringscontext wordt automatisch doorgegeven aan functies die zijn ingesteld met de methoden Xrm.Page.data.fbaf2e7a-db2f-448f-bd24-6b3ca1ccb28e#BKMK_addOnSave en Xrm.Page.data.entityAttribute.6881e99b-45e4-4552-8355-2eef296f2cd8#BKMK_addOnChange en Xrm.Page.uiControl.51828fe3-f6ff-4f97-80ed-b06b3a354955#BKMK_addPreSearch.

Methoden voor uitvoeringscontext

  • getContext
    Methode die het Clientcontext (clientreferentie)-object retourneren.

  • getDepth
    Methode die een waarde retourneert die de volgorde aangeeft waarin deze handler wordt uitgevoerd.

  • getEventArgs
    Methode die een object retouteert met methoden voor het beheren van de Save-gebeurtenis.

  • getEventSource
    Methode die een verwijzing retourneert naar het object waarbij de gebeurtenis is opgetreden.

  • getFormContext
    Methode die een verwijzing naar een formulier of bewerkbaar raster retourneert, afhankelijk van de locatie waar de methode wordt aangeroepen.

  • Gedeelde variabelen
    Gedeelde variabelen maken het delen van een variabele met andere handlers voor dezelfde gebeurtenis mogelijk. U gebruikt de methoden setSharedVariable en getSharedVariable om met gedeelde variabelen te werken.

getContext

Methode die het Clientcontext (clientreferentie)-object retourneert.

ExecutionContextObj.getContext()
  • Retourwaarde
    Type: Object

getDepth

Methode die een waarde retourneert die de volgorde aangeeft waarin deze handler wordt uitgevoerd.

  • Retourwaarde
    Type: Getal

    De volgorde begint met 0.

getEventArgs

Methode die een object retouteert met methoden voor het beheren van de Save-gebeurtenis.

Notitie

Deze methode retourneert null voor elke gebeurtenis behalve de gebeurtenis Save.

ExecutionContextObj.getEventArgs()

getEventSource

Methode die een verwijzing retourneert naar het object waarbij de gebeurtenis is opgetreden.

ExecutionContextObj.getEventSource()
  • Retourwaarde
    Type: Object

    Deze methode retourneert het object van het Xrm.Page-objectmodel dat de bron van de gebeurtenis is, geen HTMLDOM-object. In een gebeurtenis OnChange retourneert deze methode bijvoorbeeld het kenmerkobject Xrm.Page.data.entity dat het gewijzigde kenmerk vertegenwoordigt.

getFormContext

Methode die een verwijzing naar het formulier (Xrm.Page) of bewerkbaar raster retourneert, afhankelijk van de locatie waar de methode wordt aangeroepen.

ExecutionContextObj.getFormContext()
  • Retourwaarde
    Type: Object

    Deze methode retourneert een verwijzing naar het object uit het Xrm.Page-objectmodel of naar het dabc9332-54f3-4b1e-ac98-a3c5a4641b0c#BKMK_GridRow-object in een bewerkbare raster, afhankelijk van waar de methode wordt aangeroepen. Met deze methode kunt u algemene gebeurtenishandlers maken voor een formulier of een bewerkbaar raster, afhankelijk van waar deze wordt aangeroepen.

    Meer informatie: Het objectmodel Xrm.Page gebruiken en Bewerkbare rasterobjecten en -methoden (clientreferentie)

    Notitie

    Deze methode werd geïntroduceerd in Update voor Dynamics 365 (online en on-premises) - december 2016.

  • Voorbeeld
    In de volgende voorbeeldcode ziet u hoe u een methode kunt maken om een melding in te stellen voor een formulierveld of bewerkbare rastercel, afhankelijk van waar u het script (d88d5f21-6385-443b-91f2-0ec0c16b1324#BKMK_FieldOnChangeEvent of het bewerkbare raster dabc9332-54f3-4b1e-ac98-a3c5a4641b0c#BKMK_OnChange geregistreerd hebt):

    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');
        }
    }
    

Gedeelde variabelen

Gedeelde variabelen maken het delen van een variabele met andere handlers voor dezelfde gebeurtenis mogelijk. U gebruikt de methoden setSharedVariable en getSharedVariable om variabelen tussen functies door te geven.

setSharedVariable

Stelt de waarde van een variabele in die door een hander moet worden gebruikt nadat de huidige handler is voltooid.

ExecutionContextObj.setSharedVariable(key, value)
  • Argumenten
    String: De naam van de variabele

    Object: De in te stellen waarde.

getSharedVariable

Haalt de variabelenset op met setSharedVariable.

ExecutionContextObj.getSharedVariable(key)
  • Argumenten
    String: De naam van de variabele.

  • Retourwaarde
    Type: Object

    Het specifieke type is afhankelijk van wat het waardeobject is.

Zie ook

Programmeerreferentie op de client

Microsoft Dynamics 365

© 2017 Microsoft. Alle rechten voorbehouden. Auteursrecht