Kontekst for udførelse (klientsidereference)
Udgivet: januar 2017
Gælder for: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online
Kørselskonteksten er en valgfri parameter, der kan overføres til en JavaScript biblioteksfunktion via en hændelseshandler. Denne indstilling vises i dialogboksen med egenskaber for handleren, når du angiver navnet på funktionen. Denne indstilling er angivet for et <Handler> (FormXml)-element ved hjælp af attributten passExecutionContext.
Kørselskonteksten overføres automatisk til funktioner, der er angivet ved hjælp af metoderne Xrm.Page.data.fbaf2e7a-db2f-448f-bd24-6b3ca1ccb28e#BKMK_addOnSave og Xrm.Page.data.entityAttribute.6881e99b-45e4-4552-8355-2eef296f2cd8#BKMK_addOnChange og Xrm.Page.uiControl.51828fe3-f6ff-4f97-80ed-b06b3a354955#BKMK_addPreSearch.
Metoder til udførelse af kontekst
getContext
Metode, der returnerer objektet Klientsidekontekst (klientsidereference).getDepth
Metode, der returnerer en værdi, der angiver den rækkefølge, hvori denne handler udføres.getEventArgs
Metode, der returnerer et objekt med metoder til at administrere hændelsen Save.getEventSource
Metode, der returnerer en reference til det objekt, som hændelsen opstod på.getFormContext
Metode, der returnerer en reference til en formular eller et redigerbart gitter, afhængigt af hvor metoden blev hentet.Delte variabler
Delte variabler tillader deling af en variabel med andre handlere for den samme hændelse. Du kan bruge metoderne setSharedVariable og getSharedVariable til at arbejde med delte variabler.
getContext
Metode, der returnerer objektet Klientsidekontekst (klientsidereference)
ExecutionContextObj.getContext()
- Returværdi
Type: objekt
getDepth
Metode, der returnerer en værdi, der angiver den rækkefølge, hvori denne handler udføres.
Returværdi
Type: TalRækkefølgen begynder med 0.
getEventArgs
Metode, der returnerer et objekt med metoder til at administrere hændelsen Save.
Bemærk
Denne metode returnerer null for en hvilken som helst hændelse, bortset fra hændelsen Save.
ExecutionContextObj.getEventArgs()
Returværdi
Type: objektFlere oplysninger:Gemme hændelsesargumenter (klientsidereference).
getEventSource
Metode, der returnerer en reference til det objekt, som hændelsen opstod på.
ExecutionContextObj.getEventSource()
Returværdi
Type: objektDenne metode returnerer objektet fra objektmodellen Xrm.Page, der er kilden til hændelsen, ikke et HTMLDOM-objekt. I en OnChange-hændelse returnerer denne metode f.eks. attributobjektet Xrm.Page.data.entity, der repræsenterer den ændrede attribut.
getFormContext
Metode, der returnerer en reference enten til formularen (Xrm.Page) eller et redigerbart gitter, afhængigt af hvor metoden blev kaldet.
ExecutionContextObj.getFormContext()
Returværdi
Type: objektDenne metode returnerer en reference enten til objektet fra Xrm.Page -objektmodellen, eller dabc9332-54f3-4b1e-ac98-a3c5a4641b0c#BKMK_GridRow -objektet i et redigerbart gitter, afhængigt af hvor metoden blev kaldet. Med denne metode kan du oprette fælles hændelseshandlere, der kan fungere enten i en formular eller et redigerbart gitter, afhængigt af hvor de blev kaldet.
Flere oplysninger: Bruge Xrm.Page-objektmodel og Redigerbare gitterobjekter og -metoder (klientsidereference)
Bemærk
Denne metode blev introduceret i December 2016 – opdatering til Dynamics 365 (online og det lokale miljø).
Eksempel
Følgende eksempelkode demonstrerer, hvordan du kan oprette en metode, der angiver meddelelsen i et formularfelt eller en redigerbar gittercelle, afhængigt af hvor du registrerede scriptet (d88d5f21-6385-443b-91f2-0ec0c16b1324#BKMK_FieldOnChangeEvent eller dabc9332-54f3-4b1e-ac98-a3c5a4641b0c#BKMK_OnChange-hændelse for redigerbart gitter):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'); } }
Delte variabler
Delte variabler tillader deling af en variabel med andre handlere for den samme hændelse. Du bruger metoderne setSharedVariable og getSharedVariable til at overføre variabler mellem funktioner.
setSharedVariable
Angiver værdien af en variabel, som skal bruges af en handler, når den aktuelle handler er fuldført.
ExecutionContextObj.setSharedVariable(key, value)
Argumenter
String: Navnet på variablenObject: Værdien, som skal angives.
getSharedVariable
Henter en variabel, der er angivet vha. setSharedVariable.
ExecutionContextObj.getSharedVariable(key)
Argumenter
String: Navnet på variablen.Returværdi
Type: objektDen specifikke type afhænger af, hvad objektets værdi er.
Se også
Programmeringsreference på klientsiden
Microsoft Dynamics 365
© 2017 Microsoft. Alle rettigheder forbeholdes. Ophavsret