Disabilitare il salvataggio automatico in un'app basata su modello
Il salvataggio automatico consente agli utenti dell'app 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 una riga, 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 tabelle aggiornate e tabelle classiche sono abilitati per il salvataggio automatico. Dopo la creazione di una riga (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. Se un altro utente ha aggiornato la stessa riga 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 della riga. Una volta creata la riga, il pulsante di salvataggio nella barra dei comandi non viene visualizzato ma è disponibile un pulsante nell'angolo in basso a destra che mostrerà se ci sono modifiche non salvate. Questo controllo viene visualizzato anche se il salvataggio automatico è disabilitato.
È possibile fare clic sul pulsante per salvare la riga e aggiornare immediatamente i dati nel modulo. Quando il salvataggio automatico è abilitato, ogni volta che si esce da una riga o che si chiude una finestra separata che visualizza una riga, la riga verrà salvata. Non è necessario che il pulsante Salva e chiudi venga visualizzato in moduli per tabelle non aggiornate.
È consigliabile disabilitare il salvataggio automatico?
Se sono presenti script di plug-in, di flussi di lavoro o di moduli in esecuzione quando una riga viene salvata, 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 una tabella è 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 una riga, 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 provochi problemi con qualsiasi estensione utilizzata, gli amministratori di Power Platform possono disabilitarlo per l'ambiente. Non è disponibile alcuna impostazione per disabilitare il salvataggio automatico per tabelle o moduli singoli.
- Accedi all'interfaccia di amministrazione di Power Platform, vai ad Ambienti, quindi apri l'ambiente che desideri.
- Nella barra dei comandi selezionare Importazioni.
- Espandere l'area Prodotto, quindi selezionare Comportamento.
- In Comportamento di base, per Salvataggio automatico, seleziona Disattiva.
Disabilitare il salvataggio automatico per un modulo
Se si desidera disabilitare il salvataggio automatico per moduli di tabella specifici, è possibile aggiungere codice all'evento OnSave
in una tabella.
Nota
Utilizzando questo metodo, il salvataggio automatico verrà disabilitato per il modulo, ma i dati verranno nuovamente salvati quando l'utente fa clic sul pulsante nell'angolo in basso a destra. 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.
L'utilizzo della procedura seguente rende inutilizzabile il pulsante Salva e chiudi nel modulo poiché chiama preventDefault
in saveMode
2, che fa riferimento a Salva e chiudi. Puoi rimuovere il controllo getSaveMode() == 2
di seguito per evitare che ciò avvenga, ma il modulo verrà salvato automaticamente se tenti di uscire dal modulo o di chiudere il modulo in cui i dati sono stati modificati. Anche il pulsante Salva e continua non funziona per questo motivo.
Accedi a Power Apps.
Nel riquadro di spostamento sinistro, seleziona Tabelle, quindi accanto alla tabella seleziona l'area Moduli. Se l'elemento non si trova nel riquadro del pannello laterale, seleziona …Altro, quindi l'elemento desiderato.
Puoi anche apportare modifiche alle tabelle dall'interno di una soluzione. Per farlo, seleziona Soluzioni nel riquadro a sinistra, seleziona la tabella, quindi seleziona l'area Moduli. Se l'elemento non si trova nel riquadro del pannello laterale, seleziona …Altro, quindi l'elemento desiderato.
Apri il modulo che vuoi modificare.
Seleziona Passa alla visualizzazione classica per modificare il modulo nella finestra di progettazione dei moduli classica.
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 riga scegli Nuovo.
Immetti le informazioni seguenti nel modulo della risorsa Web:
Titolo Riferimento Nome preventAutoSave Nome visualizzato Impedisce il salvataggio automatico Tipo Script (JScript) Accanto alla colonna Tipo scegli Editor di testo.
Nella colonna 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 riga 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.
Seleziona Aggiungi.
Nella finestra Proprietà gestore, impostare Libreria sulla risorsa Web aggiunta al passaggio precedente.
Digitare "
preventAutoSave
" nella colonna 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.
Selezionare OK per chiudere la finestra di dialogo Proprietà gestore.
Se sono disponibili altri gestori eventi per l'evento
OnSave
, utilizza le frecce verdi per spostare il gestore corrente nella parte superiore.Le Proprietà del modulo vengono visualizzate come segue. Nota nell'esempio mostrato qui di seguito, l'aggiornamento è stato eseguito dall'interno di una soluzione e, di conseguenza, il prefisso dell'editore (dspin_) non è lo stesso di quello fornito dall'autore predefinito (new_). Questo perché un diverso editore viene utilizzato per la soluzione.
Seleziona OK per chiudere la finestra di dialogo Proprietà modulo.
Seleziona Salva e chiudi per chiudere il modulo.
In Esplora soluzioni seleziona Pubblica tutte le personalizzazioni.
Dopo l'applicazione di questo script all'evento OnSave
, se gli utenti modificano una riga 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 selezionano il pulsante accanto ad esso.
Passaggi successivi
Nota
Puoi indicarci le tue preferenze di lingua per la documentazione? Partecipa a un breve sondaggio. (il sondaggio è in inglese)
Il sondaggio richiederà circa sette minuti. Non viene raccolto alcun dato personale (Informativa sulla privacy).