Automatisches Speichern verstehen

Abgeschlossen

Unter bestimmten Bedingungen werden die Daten des Formulars automatisch durch Auswahl eines Befehlsleistenbefehls gespeichert, bevor dessen Aktionslogik ausgeführt wird. Das automatische Speichern erfolgt nur, wenn Sie den Befehl so konfigurieren, dass er Power Fx verwendet. Wenn Sie JavaScript für die Befehlslogik verwenden, erfolgt kein automatisches Speichern.

Befehle, die Power Fx verwenden, sind standardmäßig so konfiguriert, dass Formulardaten vor der Ausführung des Ausdrucks automatisch gespeichert werden. Das automatische Speichern gilt nur für Hauptformular-Befehlsleisten und kann sowohl für neue als auch für vorhandene Datenzeilen ausgeführt werden.

Automatisches Speicherverhalten für neue Zeilen

Wenn ein Benutzer den Befehl auswählt, während er eine neue Zeile erstellt, versucht die App, die Zeile mit den eingegebenen Daten zu speichern. Nach dem erfolgreichen Speichern einer Zeile wird die Befehlslogik ausgeführt und Self.Selected.Item für die neu erstellte Zeile eingerichtet. Ihre Power Fx-Logik wird wie erwartet ausgeführt.

Wenn der Benutzer nicht alle erforderlichen Spalten ausgefüllt hat, schlägt die Speicheraktion fehl. Die Befehlslogik wird jedoch weiterhin ausgeführt. Da die neue Zeile nicht erstellt wurde, ist Self.Selected.Item leer. Logik, die von dieser Eigenschaft abhängt, z. B. das Aktualisieren von Spalten oder das Erstellen zugehöriger Zeilen, funktioniert nicht ordnungsgemäß.

Ziehen Sie in Betracht, die Befehlsschaltfläche auszublenden, wenn eine neue Zeile in Bearbeitung ist, um Verwirrung seitens der Benutzer zu vermeiden. Verwenden Sie diese Formel für die Eigenschaft Visibility:

If (Self.Selected.State = 1, false, true)

Mit diesem Ansatz wird vermieden, dass die Geschäftslogik vorzeitig ausgelöst wird, z. B. wenn ein Benutzer nur 5 von 20 Feldern ausgefüllt hat und eine Automatisierung ausgeführt wird, bevor alle Daten eingegeben wurden.

In bestimmten Fällen kann dieses Verhalten beabsichtigt und nützlich sein. Zum Beispiel kann ein Befehl Speichern und versenden die Bestellung erstellen und sie sofort in die Warteschlange für den Versand stellen. Dies unterstützt eine optimierte Erfahrung, bei der der Benutzer Speichern nicht extra auswählen muss.

Automatisches Speicherverhalten für vorhandene Zeilen

Wenn ein Benutzer den Befehl auswählt, während er eine vorhandene Zeile bearbeitet, versucht das Formular, die Änderungen zu speichern, bevor der Befehl ausgeführt wird. Nach erfolgreichem Speichern wird die Befehlslogik ausgeführt, und Self.Selected.Item spiegelt die aktualisierte Zeile wider.

Wenn Sie „Automatisches Speichern“ deaktivieren, speichert das Formular keine Änderungen, bevor der Befehl ausgeführt wird. In diesem Fall wird der vorherige Status der Zeile Self.Selected.Item beibehalten. Dies kann sich auf alle nachgelagerten Automatisierungen auswirken, die durch Datenaktualisierungen ausgelöst werden.

Automatisches Speichern deaktivieren

Standardmäßig ist „Automatisches Speichern“ für Befehle, die Power Fx verwenden, in der Komponentenbibliothek aktiviert. Fügen Sie dem Ereignis OnSave des Formulars JavaScript hinzu, um dies zu deaktivieren. Unter Automatischen Speichern für ein Formular deaktivieren finden Sie dazu weitere Informationen