Share via


Eventi del modulo (riferimento lato client)

 

Data di pubblicazione: gennaio 2017

Si applica a: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online

Tutto il codice sul lato client è avviato dagli eventi. In Microsoft Dynamics 365 verrà associata una funzione specifica in una libreria JavaScript da eseguire quando si verificano eventi specifici.

Tutti gli eventi del modulo dispongono di un'interfaccia utente utilizzata per specificare uno o più gestori evento. Ogni gestore evento specifica una funziona singola in una libreria JavaScript e tutti i parametri che è possibile passare alla funzione.

Eventi

Evento OnLoad

Evento OnSave

Evento OnChange del campo

Evento TabStateChange della scheda

Evento OnReadyStateComplete IFRAME

Evento PreSearch di controllo di ricerca

OnProcessStatusChange event

Evento OnStageChange

Evento OnStageSelected

Eventi del controllo di ricerca della Knowledge Base

Evento OnLoad della griglia secondaria di sola lettura

Eventi griglia modificabile

Evento OnLoad

L'evento OnLoad si verifica quando il modulo viene caricato. Non può impedire il caricamento dalla finestra. Utilizzare l'evento OnLoad per applicare la logica su come visualizzare il modulo, per impostare le proprietà nei campi e interagire con altri elementi della pagina.

Quando il client Microsoft Dynamics 365 per tablet è disconnesso, l'unico evento che si verificherà è OnLoad.

Nota

I moduli per Entità aggiornate non ricaricano la pagina dopo il salvataggio iniziale che crea un record o tutti i salvataggi successivi. Pertanto, l'evento OnLoad si verifica solo durante il caricamento iniziale del modulo.

Evento OnSave

L'evento OnSave si verifica quando:

  • L'utente fa clic sul pulsante Pulsante di salvataggio automatico nell'angolo inferiore destro del modulo, anche quando non esistono dati modificati da salvare.

  • Il codice esegue il metodo Xrm.Page.data.entity.Salva, anche se non esistono dati modificati da salvare.

  • L'utente esce dal modulo e nel modulo rimangono alcuni dati non salvati.

  • Con la funzione di salvataggio automatico abilitata 30 secondi dopo che i dati sono stati modificati e sono presenti alcuni dati non salvati nel modulo.

  • Il codice esegue il metodo Xrm.Page.data.Salva e sono presenti alcuni dati non salvati nel modulo.

  • Il codice esegue il metodo Xrm.Page.data.refresh passando un valore true come primo parametro e sono presenti dati non salvati nel modulo.

Per determinare quale pulsante è stato selezionato per eseguire il salvataggio, utilizzare il metodo getSaveMode.

È possibile annullare l'azione di salvataggio utilizzando il metodo preventDefault nell'oggetto argomenti dell'evento. Il metodo preventDefault accessibile utilizzando il metodo getEventArgs che è parte del contesto di esecuzione. È necessario configurare il gestore eventi del modulo da passare nel contesto di esecuzione. Per ulteriori informazioni, vedere Utilizzare il contesto di esecuzione e la pipeline per gli eventi dei moduli.

Evento OnChange del campo

L'evento OnChange si verifica di solito quando i dati in un campo del modulo vengono modificati e il campo perde lo stato attivo.

Nota

Esiste un'eccezione a questo comportamento applicabile ai campi booleani a due opzioni che vengono formattati per utilizzare i pulsanti di opzione o le caselle di controllo. In questi casi, l'evento si verifica immediatamente.

Questo evento si verifica anche quando le modifiche apportate ai dati nel server vengono recuperate per aggiornare un campo al momento dell'aggiornamento del modulo, ad esempio dopo il salvataggio di un record.

L'utilizzo del metodo fireOnChange dell'attributo Xrm.Page.data.entity determinerà inoltre il verificarsi di questo evento.

L'evento OnChange non si verifica se il campo è cambiato a livello di programmazione utilizzando il metodo setValue. Se si desidera che i gestori di eventi per l'evento OnChange vengano eseguiti dopo aver impostato il valore, è necessario utilizzare il metodo fireOnChange dell'attributo Xrm.Page.data.entity nel codice.

Tutti i campi supportano l'evento OnChange. I dati nel campo sono convalidati prima e dopo l'evento OnChange.

Nota

Sebbene il campo Status supporti l'evento OnChange, il campo è di sola lettura nel modulo, quindi l'evento può possa verificarsi tramite l'interazione utente. Un altro script potrebbe fare in modo che l'evento si verifichi utilizzando il metodo fireOnChange nel campo.

Evento TabStateChange della scheda

L'evento TabStateChange si verifica quando lo DisplayState della scheda cambia a causa dell'interazione utente o quando il metodo setDisplayState è applicato nel codice. Utilizzare questo evento quando si desidera modificare la proprietà src di un IFRAME nella scheda.

Nota

L'evento non è supportato per i client mobili Dynamics 365 (telefoni e tablet) perché le schede non si espandono o comprimono.

Come nei client Dynamics 365 mobili, le schede non si espandono o comprimono nell'hub di servizio interattivo, ma l'evento TabStateChange si verifica quando l'utente si sposta da una scheda a un'altra nell'hub di servizio interattivo.

Se imposti IFrame. La proprietà src nell'evento OnLoad per un IFRAME in una scheda compressa, il valore verrà sostituito quando la scheda viene espansa.

Evento OnReadyStateComplete IFRAME

L'evento OnReadyStateComplete indica che il contenuto di IFRAME è stato caricato ed è possibile eseguire l'accesso nel codice. Utilizzare questo evento quando si fa riferimento ai controlli IFRAME negli script.

Nota

Questo evento non è supportato per Dynamics 365 per smartphone e l'hub di servizio interattivo.

Evento PreSearch di controllo di ricerca

Il controllo di ricerca ha un evento PreSearch che si verifica prima che il controllo avvii una finestra di dialogo per cercare i record. Non è disponibile un'interfaccia utente per impostare i gestori eventi per questo evento. È necessario utilizzare i metodi addPreSearch e removePreSearch nel controllo di ricerca per aggiungere o eliminare i gestori eventi per questo evento.

Utilizzare questo evento con altri Metodi di controlli di ricerca ed eventi per modificare i risultati visualizzati in una ricerca basata sui dati del modulo prima che il controllo di ricerca mostri i risultati della ricerca da cui un utente deve cercare.

OnProcessStatusChange event

Questo evento si verifica quando lo stato di un'istanza di processo cambia. Utilizzare il metodo Xrm.Page.data.process.addOnProcessStatusChange per aggiungere gestori di eventi per questo evento e il metodo Xrm.Page.data.process.removeOnProcessStatusChange per eliminarli.Ulteriori informazioni:Scrivere gli script per i processi aziendali.

Nota

Questo evento è stato introdotto in Aggiornamento di dicembre 2016 per Dynamics 365 (online e locale).

Evento OnStageChange

Questo evento si verifica quando cambia la fase di un controllo del processo aziendale. Questo evento si verifica quando l'utente seleziona i pulsanti Fase successiva o Esegue lo spostamento alla fase precedente nell'interfaccia utente o quando uno sviluppatore utilizza i metodi Xrm.Page.data.process.moveNext o Xrm.Page.data.process.movePrevious. Non è possibile annullare la modifica di una fase utilizzando il codice in un gestore per questo evento.

Un oggetto del contesto di esecuzione viene passato ai gestori degli eventi per questo evento. È possibile utilizzare la funzione getEventArgs per recuperare un oggetto con i seguenti metodi:

  • getDirection
    Restituisce una stringa che è "next" o "previous" per mostrare la direzione della modifica della fase.

  • getStage
    Restituisce un oggetto della fase. A parte quando la navigazione si sposta in una nuova entità, la fase restituita rappresenta l'oggetto della fase di destinazione, cioè la fase attiva successiva. Quando la navigazione si sposta in una nuova entità, la fase è quella da cui si esegue la navigazione, cioè l'oggetto della fase attiva precedente.Ulteriori informazioni:Metodi di fase.

Utilizzare il metodo Xrm.Page.data.process.addOnStageChange per aggiungere gestori di eventi per questo evento e il metodo Xrm.Page.data.process.removeOnStageChange per eliminarli.Ulteriori informazioni:Scrivere gli script per i processi aziendali.

Evento OnStageSelected

Questo evento si verifica quando viene selezionata una fase di un controllo del processo aziendale. Non è possibile annullare la selezione di una fase utilizzando il codice in un gestore per questo evento.

Un oggetto del contesto di esecuzione viene passato ai gestori degli eventi per questo evento. È possibile utilizzare la funzione getEventArgs per recuperare un oggetto con i seguenti metodi:

  • getStage
    Restituisce un oggetto della fase che rappresenta la fase selezionata.Ulteriori informazioni:Metodi di fase.

Utilizzare il metodo Xrm.Page.data.process.addOnStageSelected per aggiungere gestori di eventi per questo evento e il metodo Xrm.Page.data.process.removeOnStageSelected per eliminarli.Ulteriori informazioni:Scrivere gli script per i processi aziendali.

Eventi del controllo di ricerca della Knowledge Base

Il controllo di ricerca della Knowledge Base può essere aggiunto solo ai moduli per le organizzazioni che hanno la funzionalità di gestione delle informazioni abilitata. Questo controllo ha due eventi (OnResultOpened e OnSelection) a cui gli sviluppatori possono assegnare i gestori eventi a livello di programmazione.Ulteriori informazioni:Controllo di ricerca nella Knowledge Base (riferimento lato client)

Evento OnLoad della griglia secondaria di sola lettura

Associa gestori di eventi all'evento OnLoad delle griglie secondarie.Ulteriori informazioni:Scrivere script per le griglie secondarie

Eventi griglia modificabile

Associa i gestori di eventi agli eventi griglia modificabile.Ulteriori informazioni:Oggetti e metodi della griglia modificabile (riferimento lato client)

Vedere anche

Riferimento rapido dello scripting dei moduli
Creare il codice per moduli di Microsoft Dynamics 365
Utilizzare il modello a oggetti Xrm.Page
Riferimento programmazione sul lato client
Scrivere gli script per i processi aziendali

Microsoft Dynamics 365

© 2017 Microsoft. Tutti i diritti sono riservati. Copyright