Disabilitare il salvataggio automatico per un modulo o per l'organizzazione
Questo argomento si applica a Dynamics 365 Customer Engagement (on-premises). Per la versione Power Apps di questo argomento, vedi: Disabilitare il salvataggio automatico in un'app basata su modello
Il salvataggio automatico consente agli utenti di concentrarsi sul proprio lavoro senza dover gestire il salvataggio dei dati nel modulo. La maggior parte degli utenti apprezzerà il fatto di non dover salvare i dati tutte le volte che aggiornano un record, ma alcune organizzazioni potrebbero disporre di personalizzazioni progettate per il salvataggio esplicito. Per tali organizzazioni sono disponibili opzioni per la gestione del salvataggio automatico.
Funzionamento del salvataggio automatico
Per impostazione predefinita, tutti i moduli principali per Entità aggiornate ed entità classiche sono abilitati per il salvataggio automatico. Dopo la creazione di un record (inizialmente salvato), tutte le modifiche apportate a un modulo verranno automaticamente salvate 30 secondi dopo che la modifica è stata apportata. Se nel modulo non viene apportata alcuna modifica, il salvataggio automatico non verrà eseguito mentre il modulo è aperto. Dopo la modifica, viene avviato nuovamente il periodo di 30 secondi prima del salvataggio automatico. Il campo attualmente in fase di modifica non è incluso nel salvataggio automatico. Se un altro utente ha aggiornato lo stesso record durante la modifica da parte di un altro utente, tali modifiche vengono recuperate e visualizzate nel modulo quando viene eseguito il salvataggio automatico.
Con il salvataggio automatico abilitato, il pulsante Salva viene visualizzato solo il salvataggio iniziale del record. Dopo la creazione del record, il pulsante Salva sulla barra dei comandi non è presente, ma verrà visualizzato un pulsante nell'angolo inferiore che visualizza l'eventuale presenza di modifiche non salvate. Questo controllo viene visualizzato anche se il salvataggio automatico è disabilitato.
È possibile fare clic sul pulsante per salvare il record e per aggiornare immediatamente i dati nel modulo. Quando il salvataggio automatico è abilitato, ogni volta che si esce da un record o che si chiude una finestra separata che visualizza un record, il record verrà salvato. Non è necessario che il pulsante Salva e chiudi venga visualizzato in moduli per entità non aggiornate.
Importante
In Unified Interface, l'intervallo di salvataggio automatico per una pagina aumenterà se si verifica un errore durante il salvataggio automatico. Inoltre, se il valore di un attributo viene modificato o si verifica un salvataggio riuscito, l'intervallo verrà reimpostato su 30 secondi.
È consigliabile disabilitare il salvataggio automatico?
Se sono presenti script di plug-in, di flussi di lavoro o di moduli in esecuzione quando un record viene salvato, verranno eseguiti a ogni salvataggio automatico. Ciò potrebbe portare ai comportamenti non desiderati se tali estensioni non sono state progettate per essere utilizzate con il salvataggio automatico. Indipendentemente dal fatto che il salvataggio automatico sia abilitato o meno, script di plug-in, di flussi di lavoro e di moduli devono essere progettati per individuare modifiche specifiche e non devono essere eseguiti in indiscriminato per ogni evento di salvataggio automatico.
Se per un'entità è configurato il controllo, ogni salvataggio automatico viene trattato come un aggiornamento separato. Se un utente si sofferma su un modulo con modifiche non salvate per più di 30 secondi, verrà visualizzata una voce aggiuntiva solo se l'utente aggiunge ulteriori dati dopo il salvataggio automatico. Se sono presenti report che dipendono dai dati di controllo e se ogni salvataggio viene trattato come una modifica singola di un record, la frequenza delle modifiche potrebbe aumentare. Se si utilizza questo approccio, è opportuno tenere presente che i comportamenti di un singolo utente provocano metrica inaffidabile con o senza il salvataggio automatico abilitato.
Disabilitare il salvataggio automatico per l'organizzazione
Se si ritiene che il salvataggio automatico provochino problemi con qualsiasi estensione utilizzata, è possibile disabilitarlo per l'organizzazione. Non è disponibile alcuna impostazione per disabilitare il salvataggio automatico per entità o moduli singoli.
Passare a Impostazioni>Amministrazione.
Scegliere Impostazioni di sistema.
Per l'opzione Abilitare il salvataggio automatico in tutti i moduli, selezionare No.
Disabilitare il salvataggio automatico per un modulo
Se si desidera disabilitare il salvataggio automatico per moduli di entità specifici, è possibile aggiungere codice all'evento OnSave
in un'entità.
Nota
Il salvataggio automatico verrà disabilitato per il modulo, ma i dati verranno nuovamente salvati quando l'utente fa clic sul pulsante nell'angolo inferiore destro. Se un utente tenta di uscire da un modulo o di chiudere un modulo in cui i dati sono stati modificati, verrà richiesto di salvare le modifiche prima di poter uscire o chiudere il modulo.
Sulla barra di spostamento, scegli Microsoft Dynamics 365>Impostazioni.
Verrà visualizzato Impostazioni sulla barra di spostamento.
Vai a Impostazioni>Personalizzazioni.
Scegliere Personalizzare il sistema.
In Componenti espandere Entità e individuare l'entità per il modulo.
Espandi il nodo dell'entità e scegli Moduli.
Aprire il modulo che si desidera modificare.
Creare una risorsa Web JavaScript e aggiungerla al modulo:
Nell'editor di moduli, nel gruppo Modulo scegli Proprietà modulo.
Nella scheda Eventi, in Librerie modulo, scegli Aggiungi.
Nella finestra di dialogo Cerca record scegli Nuovo.
Immetti le informazioni seguenti nel modulo della risorsa Web:
valore Nome preventAutoSave Nome visualizzato Impedisce il salvataggio automatico Type Script (JScript) Accanto al campo Tipo scegli Editor di testo.
Nel campo Origine incollare il codice seguente:
function preventAutoSave(econtext) { var eventArgs = econtext.getEventArgs(); if (eventArgs.getSaveMode() == 70 || eventArgs.getSaveMode() == 2) { eventArgs.preventDefault(); } }
Scegli OK per chiudere l'editor di testo.
Scegli Salva per salvare la risorsa Web e quindi chiudere la finestra della risorsa Web.
Nella finestra di dialogo Cerca record verrà selezionata la nuova risorsa Web creata. Scegliere Aggiungi per chiudere la finestra di dialogo.
Configurare l'evento OnSave:
Nella finestra Proprietà modulo, nella sezione Gestori eventi impostare Evento su OnSave.
Fare clic su Aggiungi.
Nella finestra Proprietà gestore, impostare Libreria sulla risorsa Web aggiunta al passaggio precedente.
Digitare "
preventAutoSave
" nel campo Funzione. È necessario rispettare la distinzione tra maiuscole e minuscole. Non includere le virgolette.Verificare che l'opzione Abilitato sia selezionata.
Selezionare Passa il contesto di esecuzione come primo parametro.
Importante
Se non si esegue questa operazione, lo script non funzionerà.
La finestra di dialogo Proprietà gestore dovrebbe avere un aspetto analogo al seguente. Il prefisso di personalizzazione: "new_" può variare in base al prefisso di personalizzazione per l'autore predefinita per l'organizzazione.
Fare clic su OK per chiudere la finestra di dialogo Proprietà gestore.
Se sono disponibili altri gestori eventi per l'evento
OnSave
, utilizzare le frecce verdi per spostare il gestore corrente nella parte superiore.
Fare clic su OK per chiudere la finestra di dialogo Proprietà modulo.
Fare clic su Salva e chiudi per chiudere il modulo.
In Esplora soluzioni fare clic su Pubblica tutte le personalizzazioni.
Dopo l'applicazione di questo script all'evento
OnSave
, se un utente modifica un record tramite questo modulo il messaggio modifiche non salvate verrà visualizzato nell'angolo inferiore destro del modulo come se il salvataggio automatico non fosse disabilitato. Ma questo messaggio non scomparirà finché gli utenti non faranno clic sul pulsante accanto ad esso.
Vedi anche
Creare e progettare i moduli
Considerazioni di progettazione per i moduli principali
Come i moduli principali vengono visualizzati su client diversi
Ottimizzare le prestazioni del modulo