Informazioni sul salvataggio automatico
In determinate condizioni, la selezione di un comando della barra dei comandi prima dell'esecuzione della logica dell'azione comporta il salvataggio automatico dei dati del modulo. Il comportamento del salvataggio automatico si applica solo quando si configura il comando per l'uso di Power Fx. Se si usa JavaScript per la logica del comando, il salvataggio automatico non avviene.
I comandi che usano Power Fx sono configurati per impostazione predefinita per il salvataggio automatico dei dati del modulo prima dell'esecuzione dell'espressione. Il salvataggio automatico si applica solo alle barre dei comandi del modulo principale e può avvenire sia per le righe di dati nuove sia per quelle esistenti.
Comportamento del salvataggio automatico per le nuove righe
Quando un utente seleziona il comando durante la creazione di una nuova riga, l'app tenta di salvare la riga con i dati immessi. Dopo che la riga è stata salvata correttamente, viene eseguita la logica del comando e Self.Selected.Item viene impostato sulla riga appena creata. La logica di Power Fx viene eseguita come previsto.
Se l'utente non ha completato tutte le colonne obbligatorie, il salvataggio non riesce. La logica del comando verrà comunque eseguita. Poiché la nuova riga non è stata creata, Self.Selected.Item è vuoto. La logica che dipende da questa proprietà, ad esempio l'aggiornamento di colonne o la creazione di righe correlate, non funzionerà correttamente.
Per evitare confusione, è consigliabile nascondere il pulsante di comando quando è in corso una nuova riga. Usare questa formula per la proprietà Visibilità:
If (Self.Selected.State = 1, false, true)
Questo approccio evita un'attivazione prematura della logica di business, ad esempio quando un utente ha compilato solo 5 campi su 20 e l'automazione viene eseguita prima dell'immissione di tutti i dati.
In alcuni casi, questo comportamento può essere intenzionale e utile. Ad esempio, un comando Salva e spedisci potrebbe creare l'ordine e metterlo immediatamente in coda per la spedizione. In questo modo si offre un'esperienza semplificata in cui l'utente non deve selezionare Salva separatamente.
Comportamento del salvataggio automatico per le righe esistenti
Quando un utente seleziona il comando durante la modifica di una riga esistente, il modulo tenta di salvare le modifiche prima di eseguire il comando. Se il salvataggio avviene correttamente, viene eseguita la logica del comando e Self.Selected.Item riflette la riga aggiornata.
Se si disabilita il salvataggio automatico, il modulo non salva le modifiche prima dell'esecuzione del comando. In questo caso, Self.Selected.Item mantiene lo stato precedente della riga. Ciò può influire su eventuali automazioni downstream attivate da aggiornamenti dei dati.
Come disabilitare il salvataggio automatico
Per impostazione predefinita, per i comandi che usano Power Fx il salvataggio automatico è abilitato nella libreria dei componenti. Per disabilitarlo, aggiungere JavaScript all'evento OnSave del modulo. Per altre informazioni, vedere Disabilitazione del salvataggio automatico per un modulo.