Freigeben über


Deaktivieren des automatischen Speicherns in einer modellgesteuerten App

Das automatische Speichern hilft App-Benutzenden dabei, sich auf ihre Arbeit zu konzentrieren, ohne dass sie sich um die Speicherung von Daten in dem Formular kümmern müssen. Die meisten Benutzenden schätzen es sehr, nicht bei jeder Aktualisierung einer Zeile ausdrücklich die Daten speichern zu müssen, manche Organisationen haben jedoch Anpassungen, die genau dies verlangen. Für solche Organisationen stehen Optionen zur Verfügung, um das automatische Speichern zu verwalten.

So funktioniert das automatische Speichern

Standardmäßig ist für alle Hauptformulare für aktualisierte Tabellen und klassische Tabellen das automatische Speichern aktiviert. Nachdem eine Spalte erstellt (zum ersten Mal gespeichert) wurde, werden alle Änderungen an einem Formular automatisch dreißig Sekunden nach der Änderung gespeichert. Wenn keine Änderungen im Formular vorgenommen werden, wird das automatische Speichern nicht durchgeführt, solange das Formular geöffnet ist. Nachdem eine Änderung vorgenommen wurde, beginnt der 30-Sekunden-Zeitraum vor dem nächsten automatischen Speichern erneut. Wenn ein anderer Benutzender die gleiche Zeile aktualisiert hat, während Sie ihn bearbeiten, werden diese Änderungen abgerufen und bei dem automatischen Speichern in dem Formular angezeigt.

Wenn das automatische Speichern aktiviert ist, wird die Speichern-Schaltfläche nur für die erste Speicherung der Zeile angezeigt. Nachdem die Zeile erstellt wurde, wird die Speichern-Schaltfläche auf der Befehlsleiste nicht angezeigt, Sie sehen jedoch eine Schaltfläche Schaltfläche „Automatisches Speichern“. in der rechten unteren Ecke, die anzeigt, ob nicht gespeicherte Änderungen vorhanden sind. Dieses Steuerelement wird auch angezeigt, wenn das automatische Speichern deaktiviert ist.

Sie können diese Schaltfläche auswählen, um die Zeile zu speichern und gleichzeitig Daten im Formular zu aktualisieren. Wenn das automatische Speichern aktiviert ist, wird die Zeile gespeichert, wann immer Sie von einer Zeile wegnavigieren oder ein separates Fenster mit einer Zeile schließen. Die Schaltfläche Speichern und schließen, die in Formularen für nicht gespeicherte Tabellen angezeigt wird, wird nicht benötigt.

Sollten Sie das automatische Speichern deaktivieren?

Wenn Sie Workflows, Plug-Ins oder Formularskripts haben, die ausgeführt werden, wenn eine Zeile gespeichert wird, werden diese bei jeder automatischen Speicherung ausgeführt. Dieses Muster kann unter Umständen zu unerwünschtem Verhalten führen, wenn diese Erweiterungen nicht dafür ausgelegt sind, dass sie mit automatischem Speichern funktionieren. Unabhängig davon, ob das automatische Speichern aktiviert ist, sollten Plug-Ins, Workflows und Formularskripte so entworfen werden, dass sie nach bestimmten Änderungen suchen und nicht unterschiedslos bei jedem Speichern-Ereignis ausgelöst werden.

Wenn Sie für eine Tabelle die Überwachung konfiguriert haben, wird jede Speicherung wie eine separate Aktualisierung behandelt. Wenn jemand länger als 30 Sekunden auf einem Formular mit nicht gespeicherten Änderungen bleibt, sehen Sie einen zusätzlichen Eintrag, wenn dieser Benutzende nach der automatischen Speicherung weitere Daten hinzufügt. Wenn Sie Berichte haben, die von der Überwachung von Daten abhängen und jede Speicherung als individuelle Manipulation einer Zeile behandeln, sehen Sie möglicherweise eine Zunahme der Zahl der Manipulationen. Wenn Sie dieses Konzept verwenden, sollten Sie bedenken, dass, ob mit oder ohne automatisches Speichern, individuelles Benutzerverhalten dies zu einer unzuverlässigen Metrik macht.

Deaktivierung des automatischen Speicherns für die Organisation

Wenn Sie zu dem Schluss kommen, dass das automatische Speichern zu Problemen mit von ihnen verwendeten Erweiterungen führt, können Power Platform-Administrierende sie für die Umgebung deaktivieren. Es gibt keine Einstellung, um das automatische Speichern für einzelne Tabellen oder Formulare zu deaktivieren.

  1. Melden Sie sich beim Power Platform-Admin-Center, gehen Sie zu Verwalten>Umgebungen und öffnen Sie dann die gewünschte Umgebung.
  2. Wählen Sie auf der Befehlsleiste Einstellungen aus.
  3. Erweitern Sie den Bereich Produkt und wählen Sie dann Verhalten aus.
  4. Wählen Sie unter Grundlegendes Verhalten für das Automatische Speichern die Option Aus aus.

Deaktivieren des automatischen Speicherns für ein Formular

Wenn Sie das automatische Speichern für bestimmte Tabellenformulare deaktivieren möchten, können Sie dem OnSave-Ereignis in einer Tabelle Code hinzufügen.

Anmerkung

Wenn Sie diese Methode verwenden, wird automatische Speicherung für das Formular deaktiviert, die Daten werden aber weiterhin gespeichert, wenn Sie die Schaltfläche Schaltfläche „Automatisches Speichern“. rechts unten auswählen. Wenn Sie versuchen, von einem Formular wegzunavigieren oder ein Formular zu schließen, in dem Daten geändert wurden, werden Sie vorher aufgefordert, die Änderungen zu speichern.

Die Verwendung dieses Verfahrens führt dazu, dass die Schaltfläche Speichern und schließen im Formular nicht funktioniert, da sie im preventDefaultsaveMode 2 aufruft, was auf Speichern und schließen verweist. Sie können das getSaveMode() == 2-Kontrollkästchen entfernen, um dies zu vermeiden. Dann wird aber das Formular automatisch gespeichert, wenn Sie versuchen, es zu verlassen oder mit geänderten Daten zu schließen. Die Schaltfläche Speichern und weiter funktioniert aus diesem Grund ebenfalls nicht.

  1. Melden Sie sich bei Power Apps an.

  2. Wählen Sie im linken Navigationsbereich Tabellen, die gewünschte Tabelle und dann den Bereich Formulare aus. Wenn sich das Element nicht im linken Seitenbereich befindet, wählen Sie …Mehr und dann das gewünschte Element aus.

    Sie können die Tabellen auch innerhalb einer Lösung anpassen. Wählen Sie dazu Lösungen im linken Bereich, dann die Tabelle und zuletzt den Bereich Formulare aus. Wenn sich das Element nicht im linken Seitenbereich befindet, wählen Sie …Mehr und dann das gewünschte Element aus.

  3. Öffnen Sie das Formular, das Sie bearbeiten möchten.

  4. Wählen Sie In klassischen Modus wechseln aus, um das Formular im klassischen Formulardesigner zu bearbeiten.

  5. Erstellen Sie eine JavaScript-Webressource, und fügen Sie sie dem Formular hinzu:

    1. Wählen Sie im Formulareditor in der Gruppe Formular den Eintrag Formulareigenschaften aus.

    2. Wählen Sie auf der Registerkarte Ereignisse unter Formularbibliotheken die Option Hinzufügen aus.

    3. Wählen Sie im Dialogfeld Zeile nachschlagen die Option Neu aus.

    4. Geben Sie im Webressourcenformular die folgenden Informationen ein:

      Titel Verweis
      Name preventAutoSave
      Anzeigename Verhindern des automatischen Speicherns
      Art Skript (JScript)
    5. Wählen Sie neben der Spalte Typ die Option Text-Editor aus.

    6. Geben Sie in der Spalte Source den folgenden Code ein:

      function preventAutoSave(econtext) {  
          var eventArgs = econtext.getEventArgs();  
          if (eventArgs.getSaveMode() == 70 || eventArgs.getSaveMode() == 2) {  
              eventArgs.preventDefault();  
          }  
      }  
      
      
    7. Wählen Sie OK aus, um den Text-Editor zu schließen.

    8. Wählen Sie Speichern aus, um die Webressource zu speichern und das Webressourcefenster dann zu schließen.

    9. Im Dialogfeld Zeile suchen ist die neue Webressource, die Sie erstellt haben, ausgewählt. Wählen Sie Hinzufügen aus, um das Dialogfeld zu schließen.

  6. Konfigurieren des OnSave-Ereignisses:

    1. Setzen Sie im Fenster Formulareigenschaften im Abschnitt Ereignishandler das Ereignis auf OnSave.

    2. Wählen Sie Hinzufügen aus.

    3. Setzen Sie im Fenster HandlereigenschaftenBibliothek auf die Webressource, die Sie im vorherigen Schritt hinzugefügt haben.

    4. Geben Sie „preventAutoSave“ in die Spalte Funktion ein. Dabei die Groß-/Kleinschreibung beachten. Geben Sie keine Anführungszeichen ein.

    5. Stellen Sie sicher, dass Aktiviert markiert ist.

    6. Markieren Sie Ausführungskontext als ersten Parameter übergeben.

      Wichtig

      Andernfalls funktioniert das Skript nicht.

      Das Dialogfeld Handlereigenschaften sollte so aussehen. Das Anpassungspräfix „new_“ kann je nach dem für den Standardherausgeber für Ihre Organisation eingerichteten Anpassungspräfix abweichen.

      OnSave-Ereignishandler zur Verhinderung der automatischen Speicherung in Dynamics 365

    7. Wählen Sie auf OK aus, um den Dialog Handlereigenschaften zu schließen.

    8. Wenn noch weitere Ereignishandler für das Ereignis OnSave vorhanden sind, verwenden Sie die grünen Pfeile, um diesen nach oben zu verschieben.

      Die Formulareigenschaften sollten wie folgt angezeigt werden. Beachten Sie, dass im hier gezeigten Beispiel die Aktualisierung innerhalb einer Lösung erfolgt ist und das Herausgeberpräfix (dspin_) daher nicht mit dem vom Standardherausgeber (new_) bereitgestellten Präfix übereinstimmt. Das liegt daran, dass ein anderer Herausgeber für die Lösung verwendet wird.

    Erweiterte Einstellungen

  7. Wählen Sie OK aus, um das Dialogfeld Formulareigenschaften zu schließen.

  8. Klicken Sie auf Speichern und schließen, um das Formular zu schließen.

  9. Wählen Sie im Projektmappen-Explorer die Option Alle Anpassungen veröffentlichen aus.

Nachdem Sie dieses Skript auf das OnSave-Ereignis angewendet haben, erscheint dann, wenn Benutzende mit diesem Formular eine Zeile bearbeiten, in der unteren rechten Ecke des Formulars die Meldung nicht gespeicherte Änderungen, genau so, als ob das automatische Speichern nicht aktiviert wäre. Diese Nachricht verschwindet aber nicht, bis die Personen die Schaltfläche Schaltfläche „Automatisches Speichern“. daneben auswählen.

Nächste Schritte,

Formulare erstellen und gestalten